系统介绍
该项目是一个校内互动平台,主要基于Springboot、mysql、redis、mybatis等技术开发的,主要目的是为校内学生提供友好交流学习的平台,帮助学生了解时事以及增进同学之间的友谊。
其主要功能有:
(1)发布帖子:用户可以发布帖子,同时也可以查看最新帖子列表和最热帖子列表,还能通过搜索自己感兴趣的帖子。
(2)置顶或设为精华帖子:管理员可以将用户帖子设置为精华帖子,也可将其置顶。
(3)关注、点赞、回帖:用户可以关注其他用户,也可对其用户的帖子点赞或回帖。
(4)账号注册:主要通过一个表单对账号、密码、确认密码、邮箱进行填写,该平台的前后端都会对这些填写信息进行验证,验证通过后会向用户邮箱发送激活邮件,用户只需到邮箱进行激活即可。
(5)敏感词过滤:平台采用前缀树算法进行敏感词过滤,保证帖子内容健康、积极向上。
界面截图
未登录的首页:
登录后的首页:
账号注册:
登录页面:
发布帖子:
查看帖子:
搜索帖子:
个人主页:
账号设置:
消息通知:
测试用例
功能测试:
界面测试:
接口测试:
其他测试:
自动化脚本测试(部分)
功能测试:
public class Test7 {
@Autowired
private static RedisTemplate redisTemplate;
public static void main(String[] args) throws InterruptedException {
ChromeOptions options = new ChromeOptions();
options.addArguments("--remote-allow-origins=*");
ChromeDriver driver = new ChromeDriver(options);
driver.get("http://localhost:8080/community/index");
//检查各种链接按钮是否跳转
driver.findElement(By.linkText("首页")).click();
Thread.sleep(3000);
driver.findElement(By.linkText("最新")).click();
Thread.sleep(3000);
driver.findElement(By.linkText("最热")).click();
Thread.sleep(3000);
//navigate对象
WebDriver.Navigation navigation = driver.navigate();
navigation.back();
Thread.sleep(3000);
driver.findElement(By.linkText("注册")).click();
Thread.sleep(3000);
navigation.back();
Thread.sleep(2000);
driver.findElement(By.linkText("登录")).click();
Thread.sleep(3000);
navigation.back();
Thread.sleep(2000);
driver.findElement(By.name("keyword")).sendKeys("hhhh");
driver.findElement(By.cssSelector("button[type='submit']")).click();
Thread.sleep(3000);
navigation.back();
//登录模块
driver.findElement(By.linkText("登录")).click();
//输入账号
driver.findElement(By.id("username")).sendKeys("swc");
Thread.sleep(2000);
//输入密码
driver.findElement(By.id("password")).sendKeys("123");
Thread.sleep(2000);
//刷新验证码
driver.findElement(By.linkText("刷新验证码")).click();
Thread.sleep(2000);
//输入验证码
Cookie cookie = driver.manage().getCookieNamed("kaptchaOwner");
String redisKey = RedisKeyUtil.getKaptchaKey(cookie.getValue());
Jedis redis = new Jedis("localhost", 6379);
redis.select(11);
String kaptcha = redis.get(redisKey);
System.out.println(kaptcha);
driver.findElement(By.id("verifycode")).sendKeys(kaptcha.substring(1, kaptcha.length() - 1));
Thread.sleep(2000);
driver.findElement(By.xpath("//button[text()='立即登录']")).click();
}
}