软件测试 | Selenium测试用例如何编写

518 篇文章 3 订阅
514 篇文章 2 订阅

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

# 测试的标题为 text_search
def 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 ChromeDrive driver;
    @Test
    void search() throw 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_element_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、付费专栏及课程。

余额充值