• Selenium(5)


    一、WebDriver结合Junit的使用
      1、Junit中常用的断言
        (1)assertEquals:断言实际结果与预期结果是否相等
          Equals:相等
          格式:assertEquals(预期值,实际值);
        (2)assertTrue:断言结果是否为真,True
          格式:assertTrue(布尔值)
        (3)assertFalse:断言结果是否为假,False
          格式:assertTrue(布尔值)

        练习1:在TestChromeEcshopSearch类中添加一条测试用例,增加一个测试方法
          a.点击"登录"按钮
          b.输入用户名:testing
          c.输入密码:123456
          d.点击"立即登陆"按钮
          e.验证testing是否显示在界面上
          f.点击"退出"按钮
          g.验证"登录"是否出现


      2、在其他浏览器中运行从IDE拷贝的代码
        (1)修改@Before方法中的代码,为driver赋值一个新的浏览器对象
          driver = new ChromeDriver();修改为Chrome
          driver = new InternetExplorerDriver();修改为IE
          注意:不要为driver重新定义,如下:
          WebDriver driver = new ChromeDriver();错误
        (2)需要指定浏览器的Driver
          System.setProperty("webdriver.chrome.driver","driver的路径");


      3、在一个Junit Test Case测试类中增加测试方法:
        (1)使用IDE录制测试用例的步骤
        (2)在测试类中创建一个测试方法
          @Test
          public void 测试用例名称(){}
        (3)把IDE中的测试步骤拷贝到测试类的方法中
          注意:
            a.一个测试类中放测试一个被测系统的测试用例
            b.要想运行一条测试用例,选中测试用例名称,右击运行
          练习3:分别在Firefox、chrome、IE中测试message程序
            a.测试类中有两条测试用例
            b.第一条用例输入:Rose、Rose@tedu.cn、Hello,Rose
            c.第二条用例输入:Peter、Peter@tedu.cn、Hello,Peter

    二、定位页面元素
      1、id定位:使用页面元素的id属性值来定位页面元素,建议使用的定位方式
        例如:
          driver.findElement(By.id("username")).
          sendKeys("test");

        练习4:书写完成Ecshop输入关键字"手机",等待5000毫秒

        注意:如果元素的id是动态的,就不能使用id定位方式进行定位

      2、name定位:使用name属性的值来定位
        例如:
          driver.findElement(By.name("imageField")).click();

        练习5:在name.html页面,使用name定位输入用户名、密码

        练习6:书写代码点击Ecshop"搜索"按钮

      3、linkText定位,使用链接页面元素中的文本来定位
        例如:
          driver.findElement(By.linkText("链接到id.html")).click();
        练习7:在TestEcshop.java中新增一个测试方法
          a.点击"查看购物车"
          b.点击"选购中心"
          c.点击"2.6英寸"
          d.点击"诺基亚N85"
          e.点击"您的购物车中有......."

      4、partialLinkText定位:通过一部分链接文本定位元素
        例如:
          driver.findElement(By.partialLinkText("您的购物车中有")).click();

      5、className定位:通过元素的class属性值去查找元素,不建议在整个网页中使用className定位元素,建议在层级定位中使用
        例如:
          driver.findElement(By.className("go")).click();


      6、tagName定位:通过元素的标签名称去查找元素,不建议在整个网页中使用,建议在层级定位中使用

    <html><head><body><a><input><button>

    WebDriver driver = new FirefoxDriver();
    driver.findElement(By.id("101010")).Click();
    driver.findElement(By.name("图片")).Click();
    driver.findElement(By.cpu("4hz")).开机;
    driver.findElement(By.衣服颜色("红色")).解决问题;
    <教室>
      <cpu="4hz" 分辨率="1024*" m="8G">戴尔电脑
      <衣服颜色="红色" name="花花">老师
      <id="010" 头发="黑色" 衣服颜色="红色">班长
    </教室>

    <html>
      <head></head>
      <body>
        <id="101010" name="图片" 颜色="蓝色">logo图片
        <name="链接" 形状="宽的" 颜色="绿色">购买链接

        <>用户名输入框
        <>类型下拉框
      </body>
    </html>

    Junit代码

    package com.day05.www; import junit.framework.JUnit4TestAdapter; import junit.framework.Test; import junit.framework.TestSuite; public class AllTest { public static Test suite() { TestSuite suite = new TestSuite(); //运行TestIEMessage测试类 suite.addTest( new JUnit4TestAdapter( TestIEMessage.class)); //运行TestFirefoxMessage测试类 suite.addTest( new JUnit4TestAdapter( TestFirefoxMessage.class)); //运行TestChromeMessage测试类 suite.addTest( new JUnit4TestAdapter( TestChromeMessage.class)); //运行TestChromeEcshopSearch测试类 suite.addTest( new JUnit4TestAdapter( TestChromeEcshopSearch.class)); //运行TestFirefoxEcshopSearch测试类 suite.addTest(new JUnit4TestAdapter( TestFirefoxEcshopSearch.class)); return suite; } public static void main(String[] args) { junit.textui.TestRunner.run(suite()); } }
  • 相关阅读:
    四则运算————javaweb版
    构建之法阅读笔记02
    十一周学习进度条
    软工概论-课堂练习:添加信息
    梦断代码阅读笔记01
    链接doc命令行的mysql的编码问题
    构建之法阅读笔记01
    第十周学习进度条
    web
    sql初——基础
  • 原文地址:https://www.cnblogs.com/KalosOwen/p/8977071.html
Copyright © 2020-2023  润新知