您的位置:首页 > 娱乐 > 明星 > 如何做网站搭建api接口_娱乐网站建设_搜索引擎优化案例分析_建网站用什么工具

如何做网站搭建api接口_娱乐网站建设_搜索引擎优化案例分析_建网站用什么工具

2025/1/7 7:15:21 来源:https://blog.csdn.net/qd_lifeng/article/details/144933030  浏览:    关键词:如何做网站搭建api接口_娱乐网站建设_搜索引擎优化案例分析_建网站用什么工具
如何做网站搭建api接口_娱乐网站建设_搜索引擎优化案例分析_建网站用什么工具

目录

参数的使用方法

以下是几种常见的实现APP自动化测试参数化的方法

使用测试框架内置功能

从文件读取数据

数据库查询

环境变量或配置文件

命令行参数

第三方库或工具


参数化是自动化测试的一种常用技巧,测试人员可以将测试代码中的某些变量的输入使用参数来代替。我们以测试百度搜索功能为例,每次测试搜索功能,都要测试搜索中输入的不同的搜索内容,在进行这个测试过程中,除了搜索框中的数据在变化,测的步骤也是重复的,这时就可以使用参数化的方式来解决测试数据变化,测试步骤不的问题。参数化就是把测试需要用到的参数写到数据集合里,让测试程序自动从这个台里面取数据,同时每条数据都生成一个对应的测试用例。

参数的使用方法

我们使用APPium测试框架的编写测试用例时,通常会结合单元测试框架一起使用。使用测试框架参数化的机制,可以减少代码重复。参数化的使用方法是,在测试代码前添加装饰器完成测试数据的传输。

python代码

@pytest.mark.parametrize("argvnames",argvalues)

Java代码

@ParameterizedTest@ValueSource(strings =argvalues)

不同编程语言提供的单元测试框架支持的参数传递方式也不一样,但都会在测试用例上添加一个装饰器用以帮助参数化的实现,以 Python 语言提供的单元测试框架 pytest为例,pytest自带了参数化功能,在测试用例上添加参数化需要用到装饰器@pytest.mnparametize(),同时需要传入两个参数“argvnames”与“argvalues”,第一个参数需要个或者多个变量来接收列表中的每组数据,第二个参数传递存储数据的列表。测试用例需要使用同名的字符串接收测试数据(与“argvnames”里面的名字一致),且列表有多少个元素就会生成并执行多个测试用例。

下面示例使用参数化定义3组数据,每组数据都存放在一个数据序列中,分别将数据序列传入(test_input,expected)参数中。

python代码

# content of test expectation.pyimport pytest@pytest.mark,parametrize("test_input,expected",[("3+5",8),("2+4",6),("6*9",42)])def test_eval(test_input,expected):assert eval(test_input == expected

java代码

public class BookParamTest {@ParameterizedTest@MethodSource("intProvider")void testwithExplicitLocalMethodsource(int first,int second,int sum){(assertEquals(first+second,sum);}static Stream<Arguments> intProvider(){return Stream.of(arguments(358),arguments(356),arguments(6942));}}

参数化指的是将测试用例中的某些固定值替换为变量,然后通过外部数据源(如CSV文件、Excel表格、数据库等)来提供这些变量的值。这样做可以使得同一个测试用例能够使用不同的输入数据运行多次,从而提高测试覆盖率和灵活性。

以下是几种常见的实现APP自动化测试参数化的方法

使用测试框架内置功能

如果你使用的测试框架(如Appium、Espresso、XCUITest等)支持参数化,可以直接利用它们提供的特性。例如,在JUnit中你可以使用@ParameterizedTest注解配合@CsvSource或@MethodSource等方式来实现参数化。

从文件读取数据

你可以将测试数据存储在一个外部文件中,比如CSV、JSON或XML格式,并在测试执行时读取这个文件的内容。对于每组数据,创建一个新的测试实例并执行。

数据库查询

对于更复杂的数据需求,可以从数据库中获取测试数据。这通常涉及到编写SQL查询语句来提取所需的数据行,然后将其作为测试用例的输入。

环境变量或配置文件

测试参数也可以被设置为环境变量或者放在配置文件中(如.properties, .yml)。这种方式适合那些不太频繁变化但又对所有测试用例都重要的参数,比如API endpoint URL。

命令行参数

某些情况下,你可能希望直接从命令行传递参数给你的测试脚本。大多数测试框架都支持这种方式,允许你在启动测试时指定额外的参数。

第三方库或工具

还有一些专门用于管理测试数据的第三方库或工具,可以帮助简化参数化的流程。例如,Data Provider是Selenium WebDriver的一个概念,也被移植到了一些移动测试框架中。

阅读后若有收获,不吝关注,分享在看等操作!!!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com