当前位置: 首页 > news >正文

备案 网站建设计划书seo专业培训班

备案 网站建设计划书,seo专业培训班,wordpress修改html代码,比较好的中文wordpress主题⭐️前言⭐️ 本篇文章是博主基于学海记录的个人项目所做的测试报告#xff0c;用于总结运用自动化测试技术#xff0c;应用于自己的项目。 #x1f349;欢迎点赞 #x1f44d; 收藏 ⭐留言评论 #x1f4dd;私信必回哟#x1f601; #x1f349;博主将持续更新学习记录… ⭐️前言⭐️ 本篇文章是博主基于学海记录的个人项目所做的测试报告用于总结运用自动化测试技术应用于自己的项目。 欢迎点赞 收藏 ⭐留言评论 私信必回哟 博主将持续更新学习记录收获友友们有任何问题可以在评论区留言 博客中涉及源码及博主日常练习代码均已上传GitHub 内容导读1.UI自动化测试用例2.selenium4JUnit5实现Web自动化测试2.1 测试工具类2.2 博客登录页测试2.3 博客列表页测试2.4 博客详情页测试2.5 博客编辑页测试2.6 驱动释放2.7 测试套件2.8 测试结果展示1.UI自动化测试用例 2.selenium4JUnit5实现Web自动化测试 针对上图中的UI自动化测试用例挑选部分用例通过selenium4JUnit5实现Web自动化测试如下是具体实现 2.1 测试工具类 因为每一步的测试都需要获取驱动对象所以将获取驱动对象的方法抽象出来单独成类用于其他类的使用 便于检查测试结果还需要在公共类中实现屏幕截图的方法以下是测试工具类的具体代码 public class Utils {public static ChromeDriver driver;// 创建驱动对象public static ChromeDriver createDriver() {// 设置无头模式ChromeOptions optionsnew ChromeOptions();options.addArguments(-headless);// 驱动对象已经创建好了/没有创建if(drivernull) {drivernew ChromeDriver(options);// 创建隐式等待(防止因页面加载过慢而导致错误)driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(10));}return driver;}public static ListString getTime() {// 文件按照天的维度按文件夹进行保存SimpleDateFormat sim1new SimpleDateFormat(yyyyMMdd-HHmmssSS);SimpleDateFormat sim2new SimpleDateFormat(yyyyMMdd);String fileNamesim1.format(System.currentTimeMillis());String dirNamesim2.format(System.currentTimeMillis());ListString listnew ArrayList();list.add(dirName);list.add(fileName);return list;}/*** 获取屏幕截图把所有的用例执行结果保存下来*/public static void getScreenShot(String str) throws IOException {ListString listgetTime();String fileName./src/test/java/screenshot/list.get(0)/str_list.get(1).png;File srcFiledriver.getScreenshotAs(OutputType.FILE);// 把屏幕截图生成的文件放到指定的路径FileUtils.copyFile(srcFile,new File(fileName));} }2.2 博客登录页测试 首先先获取到驱动对象然后通过Before注解方法访问到登录页面的URL。 public static ChromeDriver driver Utils.createDriver();// 如果要测试登录页面以下所有的用例都有一个共同的步骤// 1、要有浏览器对象 2、访问登录页面的URLBeforeAllstatic void baseControl() {driver.get(http://162.14.74.192:8081/login.html);}通过检查跳转后的博客列表页的元素是否存在检查登录页面打开是否正确。 /*检查登录页面打开是否正确检查点公共主页 注册元素是否存在*/TestOrder(1)void loginLoad() throws IOException {driver.findElement(By.cssSelector(body div.nav a:nth-child(4)));driver.findElement(By.cssSelector(body div.nav a:nth-child(5)));Utils.getScreenShot(getClass().getName());}多参数实现正常登录的测试 /*检查正常登录情况*/ParameterizedTestCsvSource({admin,admin,zhangsan,123})Order(2)void loginSuccess(String name,String password) throws IOException, InterruptedException {driver.findElement(By.cssSelector(#username)).clear();driver.findElement(By.cssSelector(#password)).clear();driver.findElement(By.cssSelector(#username)).sendKeys(name);driver.findElement(By.cssSelector(#password)).sendKeys(password);driver.findElement(By.cssSelector(#submit)).click();Thread.sleep(500);// 对登陆结果进行检测Alert alertdriver.switchTo().alert();String expect登录成功;Assertions.assertEquals(expect,alert.getText());alert.accept();Utils.getScreenShot(getClass().getName());driver.navigate().back();}检验异常登录的情况 /*检查异常登录情况*/ParameterizedTestCsvSource({admin,123})Order(3)void loginFail(String name,String password) throws InterruptedException, IOException {driver.findElement(By.cssSelector(#username)).clear();driver.findElement(By.cssSelector(#password)).clear();driver.findElement(By.cssSelector(#username)).sendKeys(name);driver.findElement(By.cssSelector(#password)).sendKeys(password);driver.findElement(By.cssSelector(#submit)).click();Thread.sleep(500);// 对异常登录结果进行检测Alert alertdriver.switchTo().alert();String expect抱歉用户名或密码错误请重新输入;Assertions.assertEquals(expect,alert.getText());alert.accept();Utils.getScreenShot(getClass().getName());}注意以上的测试用例需要按指定顺序来执行必须得先检验完成登录页面能正常打开才能进行下一步正常登录、异常登录的测试。 以下是登录页面自动化测试用例的总代码。 TestMethodOrder(MethodOrderer.OrderAnnotation.class) public class BlogLoginTest {public static ChromeDriver driver Utils.createDriver();// 如果要测试登录页面以下所有的用例都有一个共同的步骤// 1、要有浏览器对象 2、访问登录页面的URLBeforeAllstatic void baseControl() {driver.get(http://162.14.74.192:8081/login.html);}/*检查登录页面打开是否正确检查点公共主页 注册元素是否存在*/TestOrder(1)void loginLoad() throws IOException {driver.findElement(By.cssSelector(body div.nav a:nth-child(4)));driver.findElement(By.cssSelector(body div.nav a:nth-child(5)));Utils.getScreenShot(getClass().getName());}/*检查正常登录情况*/ParameterizedTestCsvSource({admin,admin,zhangsan,123})Order(2)void loginSuccess(String name,String password) throws IOException, InterruptedException {driver.findElement(By.cssSelector(#username)).clear();driver.findElement(By.cssSelector(#password)).clear();driver.findElement(By.cssSelector(#username)).sendKeys(name);driver.findElement(By.cssSelector(#password)).sendKeys(password);driver.findElement(By.cssSelector(#submit)).click();Thread.sleep(500);// 对登陆结果进行检测Alert alertdriver.switchTo().alert();String expect登录成功;Assertions.assertEquals(expect,alert.getText());alert.accept();Utils.getScreenShot(getClass().getName());driver.navigate().back();}/*检查异常登录情况*/ParameterizedTestCsvSource({admin,123})Order(3)void loginFail(String name,String password) throws InterruptedException, IOException {driver.findElement(By.cssSelector(#username)).clear();driver.findElement(By.cssSelector(#password)).clear();driver.findElement(By.cssSelector(#username)).sendKeys(name);driver.findElement(By.cssSelector(#password)).sendKeys(password);driver.findElement(By.cssSelector(#submit)).click();Thread.sleep(500);// 对异常登录结果进行检测Alert alertdriver.switchTo().alert();String expect抱歉用户名或密码错误请重新输入;Assertions.assertEquals(expect,alert.getText());alert.accept();Utils.getScreenShot(getClass().getName());} } 2.3 博客列表页测试 首先先访问到博客列表页对博客列表页中的元素检查是否存在来检验博客列表页的加载。 public class BlogListTest {public static ChromeDriver driver Utils.createDriver();BeforeAllstatic void baseControl() {driver.get(http://162.14.74.192:8081/myblog_list.html);}/*** 博客列表页可以正常显示*/Testvoid listPageLoadTest() throws IOException {driver.findElement(By.cssSelector(body div.nav a:nth-child(5)));driver.findElement(By.cssSelector(body div.nav a:nth-child(6)));Utils.getScreenShot(getClass().getName());} }2.4 博客详情页测试 首先先访问到博客详情页对博客详情页中的元素检查是否存在来检验博客详情页的加载。 public class BlogDetailTest {public static ChromeDriver driver Utils.createDriver();BeforeAllstatic void baseControl() {driver.get(http://162.14.74.192:8081/blog_content.html?blogId1);}Testvoid blogDetailLoadTest() throws IOException {driver.findElement(By.xpath(//*[id\title\]));Utils.getScreenShot(getClass().getName());} }2.5 博客编辑页测试 首先先访问到博客编辑页对博客编辑页中的元素检查是否存在来检验博客编辑页的加载。 public static ChromeDriver driver Utils.createDriver();BeforeAllstatic void baseControl() {driver.get(http://162.14.74.192:8081/blog_edit.html);}/*检查博客编辑页是否可以正常打开*/TestOrder(1)void editPageLoadTest() throws IOException {driver.findElement(By.cssSelector(#title));driver.findElement(By.cssSelector(body div.blog-edit-container div.title button));Utils.getScreenShot(getClass().getName());}在博客编辑页的测试中还需要对是否能够正常编辑并发布文章进行测试。 /*检查能不能正常编辑并发布文章*/TestOrder(2)void editAndSubmitBlogTest() throws IOException, InterruptedException {String title测试文章;driver.findElement(By.cssSelector(#title)).sendKeys(title);// 因博客系统使用到的编辑器是第三方库所以不能直接使用sendKeys向编辑模块发送文本driver.findElement(By.cssSelector(#editorDiv div.editormd-toolbar div ul li:nth-child(20) a i)).click();driver.findElement(By.cssSelector(#editorDiv div.editormd-toolbar div ul li:nth-child(21) a i)).click();driver.findElement(By.cssSelector(body div.blog-edit-container div.title button)).click();Thread.sleep(500);// 对异常登录结果进行检测Alert alertdriver.switchTo().alert();String expect恭喜发布成功;Assertions.assertEquals(expect,alert.getText());alert.accept();Utils.getScreenShot(getClass().getName());}总代码 TestMethodOrder(MethodOrderer.OrderAnnotation.class) public class BlogEditTest {public static ChromeDriver driver Utils.createDriver();BeforeAllstatic void baseControl() {driver.get(http://162.14.74.192:8081/blog_edit.html);}/*检查博客编辑页是否可以正常打开*/TestOrder(1)void editPageLoadTest() throws IOException {driver.findElement(By.cssSelector(#title));driver.findElement(By.cssSelector(body div.blog-edit-container div.title button));Utils.getScreenShot(getClass().getName());}/*检查能不能正常编辑并发布文章*/TestOrder(2)void editAndSubmitBlogTest() throws IOException, InterruptedException {String title测试文章;driver.findElement(By.cssSelector(#title)).sendKeys(title);// 因博客系统使用到的编辑器是第三方库所以不能直接使用sendKeys向编辑模块发送文本driver.findElement(By.cssSelector(#editorDiv div.editormd-toolbar div ul li:nth-child(20) a i)).click();driver.findElement(By.cssSelector(#editorDiv div.editormd-toolbar div ul li:nth-child(21) a i)).click();driver.findElement(By.cssSelector(body div.blog-edit-container div.title button)).click();Thread.sleep(500);// 对异常登录结果进行检测Alert alertdriver.switchTo().alert();String expect恭喜发布成功;Assertions.assertEquals(expect,alert.getText());alert.accept();Utils.getScreenShot(getClass().getName());} }2.6 驱动释放 当完成上述所有的测试后需要对驱动进行释放 public class DriverQuitTest {public static ChromeDriver driver Utils.createDriver();// 最后需要关闭driverTestvoid driverQuit() {driver.quit();} }2.7 测试套件 通过测试套件指定按顺序的类中的所有测试用例开始执行 Suite SelectClasses({BlogLoginTest.class,BlogListTest.class,BlogDetailTest.class,BlogEditTest.class,DriverQuitTest.class}) public class RunSuite { }2.8 测试结果展示 测试结果如下图 ⭐️最后的话⭐️ 总结不易希望uu们不要吝啬你们的哟()ノ~如有问题欢迎评论区批评指正
http://www.hkea.cn/news/14400102/

相关文章:

  • iis建立网站策划公司经营范围有哪些
  • 公司网站域名到期了去哪里缴费东莞网站建设17
  • 河南省建设培训中心网站照片模板图片
  • 大连本站运营公司电商平台推广费用预算
  • 网站建设运营预算零基础学习网站开发
  • 网站建设方案书 下载可以优化网络的软件
  • 网站加盟代理国外网站大全帝国cms模板
  • 网站建设基础 ppt网站的模板管理
  • 烟台广告公司网站建设wordpress 好评插件
  • 上海莱布拉网站建设二级网站建设方案 试行
  • 网站维护中是什么意思闵行18路
  • 网站设计大概价格公司网络安全管理制度和应急工作预案
  • 做360网站优化快速排青岛市最大的网络公司是哪里
  • 网站安全证书个人网页可以做什么内容
  • 做会员卡的网站在线制作wordpress设置后台自定义功能选项
  • h5网站开发定制flash网站的优缺点
  • 纯html5 网站珠海做网站价格
  • 网站维护哪些成都专业网站设计公司
  • 做外贸网站价格wordpress怎样连接数据库连接
  • 清远网站seoaspx网站服务器失去响应
  • 怎么做网站的导航条成都行业网站
  • 泰安建站哪家好猎头公司怎么找
  • 人才网站建站做论坛网站需要什么备案
  • 设计师联盟网站做跨国婚恋网站赚钱吗
  • 网站服务器 同步备份酷炫flash网站
  • 建站工作室源码北京排名seo
  • 万网主体新增网站备案需要是滴么怎么制作一个平台
  • 哪些网站可以做详情页怎么做淘宝推广网站
  • 北京做商铺的网站美丽寮步网站建设价钱
  • 模板网站哪个平台好网页导航栏图片