Selenium 测试用例如何编写

1.Selenium 测试用例简介

编写 Selenium 测试用例的目的是模拟用户在模拟用户在浏览器上一系列的操作,通过测试脚本来完成被测对象的自动化测试。编写 Selenium 测试用例的优势如下。

(1)Selenium 是开源和免费的。

(2)Selenium 支持多种浏览器,如 IE、Firefox、Chrome、Safari。

(3)Selenium 支持多种平台,如 Windows、Linux。

(4)Selenium 支持多种语言,如 Python、Java、C#。

(5)Selenium 对 Web 支持良好。

(6)Selenium 使用简单和灵活。

(7)Selenium 支持分布式测试用例执行。

2.引入依赖

Selenium 引入依赖是为了调用 webdriver 中的方法来与浏览器进行交互,以实现测试操作。

(1)引入依赖的 Python 版本代码如下:

from selenium import webdriver

(2)引入依赖的 Java 版本代码如下:

import org.openqa.selenium.By;import org.openqa.selenium.chrome.ChromeDriver;

3.测试用例的流程

测试用例是测试人员为了实施测试而被测试的系统提供的一个特定的“集合”,这个“集合”包含:测试环境、操作步骤、测试数据、预期结果等。

一个测试用例被实施后产生的结果只有一个:成功或者失败。测试用例流程的三大核心要素为:标题、步骤、预期结果。

(1)标题:是对测试用例的描述,标题应该清楚地表达测试用例的内容。

(2)步骤:对测试执行过程进行描述。

(3)预期结果:提供测试执行的预期结果,预期结果一般是根据需求得出,如果实际结果和预期结果一致则测试通过,反之失败。

4.实例实战演示

测试用例执行的步骤如下。

(1)打开百度页面

(2)在百度的首页获取“百度一下”文本内容。

(3)将获取到的文本与“百度”进行比较,如果两个值一致,证明测试用例执行成功,反之失败。

下面是实战演示的 Python 代码与 Java 代码。

注:首先需要导入 Selenium 包,其次是定义测试方法名、编写测试步骤及断言。

  • Python 演示代码

from selenium import webdriver
#测试的标题为 test_searchdef test_search():    driver = webdriver.Chrome()    #测试的步骤    driver.get('https://www.baidu.com')    search = driver.find_element_by_id('su').get_attribute('value')    #断言预期结果    assert search == "百度"
  • Java 演示代码

import org.junit.jupiter.api.Test;import org.openqa.selenium.By;import org.openqa.selenium.chrome.ChromeDriver;public class webTest       private ChromeDriver driver;       @Test       void search() throws InterruptedException{            //实例化driver            driver = new ChromeDriver            //打开网页            driver.get("https://www.baidu.com");            //测试的步骤            String data = driver.findElement(By.id("su")).getAttribute("value");            assert data.equals("百度");                    }     }

这里要验证百度页面实际展示的内容与所期望的内容是否一致。因为实际获取到的内容应该是“百度一下”而不是“百度”,所以断言错误,代码如下。

FAILED                                     [100%]test_demo.py:3   (test_search)百度一下   !=百度
Expected :百度Actual   :百度一下<Click to see difference>
def test_search():    driver = webdriver.Chrome()    driver.get('https://www.baidu.com')    search = driver.find_elenium_by_id('su').get_attribute('value')>   assert search == "百度"E   AssertionError: assert '百度一下' == '百度 'test_demo.py:9 AssertionError
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值