当前位置:网站首页>pytest interface automation testing framework | parametrize source code analysis
pytest interface automation testing framework | parametrize source code analysis
2022-08-01 07:29:00 【COCOgsta】
Video source: Station B "Upload at risk!pytest interface automation testing framework (basic theory to project actual combat and secondary development) teaching video [software testing]"
Organize the teacher's course content and test notes while studying, and share it with everyone. The infringement will be deleted immediately. Thank you for your support!
Attach the summary post: pytest interface automation testing framework | Summary_COCOgsta's blog-CSDN blog
def paramtrize(argnames, argvalues, indirect=False, ids=None, scope=None,*, _param_mark=None):"""Add new invocations to the underlying test function using the list ofargvalues for the given argnames. Parametrization is performed duringthe collection phase. If you need to setup expensive resources see aboutsetting indirect to do it rather at test setup time.# Add a new call to the underlying test function with a list of argValues for the given argnames.During the collection phase (understood as the use case execution phase)Perform parameterization.:param argnames: (Union[str, List[str], Tuple[str, ..]]) - A comma-separatedstring denoting one or more argument names, or a list/tuple of argument strings.# Parameter names: use a comma-separated string, or a list or tuple, representing one or more parameter names:param argvalues: (Iterable[Union[_pytest.mark.structures.ParameterSet,Sequence[ojbect], object]]) -The list of argvalues determines how often a test is invoked with different argumentvalues.If only one argname was specified argvalues is a list of values. If N argnames werespecified, argvalues must be a list of N-tuples, where each tuple-element specifiesa value for its respective argname.# Argument value: only one argnames, argvalues is a list of values.When there are N argnames,Each tuple corresponds to a set of argnames, and all tuples are combined into a list:param indirect: (Union[bool, Sequence[str]]) - A list of arguments' names(subset of argnames) or a boolean. If True the list contains all names fromthe argnames. Each argvalue corresponding to an argname in this list will bepassed as request.param to its respective argname fixture function so that itcan perform more expensive setups during the setup phase of a test rather thanat collection time.# indirect: When indirect=True, if the incoming argnames is the fixture function name.# At this time, the fixutre function name will become an executable function, argvalues are used as the parameters of the fixture, and the fixture function will be executed.The final result is then stored in request.param;When indirect=False, the fixture function is only called as a parameter name to the test collection phase.What is the setup phase test setup phase?Understand it as configuring the conftest.py stageWhat is the collection phase test collection phase?understood as the use case execution phase:param ids: (Optional[Union[Iterable[Union[None, str, float, int, bool]],Callable[[Any], Optional[Object]]]]) -Sequence of (or generator for) ids for argvalues, or a callable to return part ofthe id for each argvalue.With sequences (and generators like itertools.count()) the returned ids should beof type string, int, float, bool, or None. They are mapped to the correspondingindex in argvalues. None means to use the auto-generated id.If it is a callable it will be called for each entry in argvalues,and the return value is used as part of the auto-generated id for the wholeset (where parts are joined with dashes ("-")). This is useful to provide morespecific ids for certain items, e.g. dates. Returning None will use anauto-generated id.If no ids are provided they will be generated automatically from the argvalues.# ids: a list of strings, which can be understood as a title, consistent with the number of use cases:param scope: (Optional[_Scope]) - If specified it denotes the scope of theparameters. The scope is used for grouping tests by parameter instance.It will also override any fixture-function defined scope, allowing to seta dynamic scope using test context or configuration.# If specified, indicates the range of parameters.Scopes are used to group tests by parameter instance.It will also override any fixture functionsDefined scopes that allow the use of test contexts or configuration dynamic scopes.:param _param_mark::return:"""
边栏推荐
猜你喜欢
The use of Golang: go template engine
Data organization -- singly linked list of the linear table
如何使用Photoshop合成星轨照片,夜空星轨照片后期处理方法
【HDLBits 刷题】Circuits(1)Combinational Logic
日志导致线程Block的这些坑,你不得不防
Case practice --- Resnet classic convolutional neural network (Mindspore)
Introduction to the basic principles, implementation and problem solving of crawler
Chapters 6 and 7 of Huawei Deep Learning Course
零代码网站开发利器:WordPress
七夕来袭——属于程序员的浪漫
随机推荐
插入排序—直接插入排序和希尔排序
22 Grab the Seat 1 C.Grab the Seat (Geometry + Violence)
监听父元素宽高,自适应插件大小
好的plm软件有哪些?plm软件排行榜
13 - JUC CountDownLatch concurrent programming
【南瓜书ML】(task4)神经网络中的数学推导(更新ing)
C语言学习概览(一)
支付宝如何生成及配置公钥证书
表的创建、修改与删除
Practical training Navicat Chinese and English mode switching
Create, modify and delete tables
mysql中添加字段的相关问题
【ASWC Arxml结构分解】-7-Explicit(显式)和Implicit(隐式) Sender-Receiver communication描述差异
Offer刷题——1
最小生成树
Golang: go static file processing
pytest接口自动化测试框架 | 跳过测试类
JSON 与 JS 对象的区别
LevelSequence源码分析
The log causes these pits in the thread block, you have to prevent