2019-10-21

6. 测试用例编写

6.1 测试接口有哪些?

找到自己项目的测试接口,比如我的测试接口如下所示,


2019-10-21_第1张图片

6.2 测试API有哪些?

 获取相应接口公开的方法,通过第三方库suds提供的Client(界面名称,doctor=命名空间)方法获取,比如获取‘小玲珑’项目的所有方法信息及输入输出参数类型。

接口对应方法信息如下


2019-10-21_第2张图片

接口方法的输入输出参数类型如下


2019-10-21_第3张图片

6.3 测试参数有哪些?

获取接口对方对应输入类型,得到输入参数类型后可以构造输入参数,传入正确参数类型才能正确发送请求,通过client.factory.create(方法名称)来获取参数,比如AddModInfo的输入参数如下,此参数在方法调用时转为AddModInfo(xs:stringstationCode, ns1:TB_PDP_ModInfo modInfo)

StationCode需要转为string stationCode

(TB_PDP_ModInfo){

        Height = None

        ID = None

        InXml = None

        Name = None

        ScreenTypeID = None

        UseTime = None

        Width = None

        Xml = None

     }

需要转为TB_PDP_ModInfo modInfo


2019-10-21_第4张图片

6.4 如何验证返回值?

验证接口方法的返回值是否同预期的一致,方法调用结果返回的类型有普通类型、对象类型

a) 关于普通类型的预期值我们可以在excel中直接通过expect_res列写入,比如AddModInfo方法的返回值在excel中为


代码中验证可通过python的单元测试框架unittest方法验证

self.assertEqual( row_case_data['expect_res'],result)

b) 对象类型的验证,需要代码构造返回对象类型,通过数据库查询方式得到数据库的值,最后将数据库值与实际返回对象的属性值进行比较

TB_PIS_SubjectInfo().assert_equal_sql(get_db(test_Get_SubjectInfo_ByScreenID_valid_param),result)

第一步:get_db(test_Get_SubjectInfo_ByScreenID_valid_param)获取数据库值

第二步:TB_PIS_SubjectInfo()构造返回值对象

第三步:assert_equal_sql比较二者值是否一致


6.5 添加我的第一个测试用例?

本文以添加一个导向接口用例进行展开,添加测试类TestAddModSoureRelation

(一) 通过上述方式获取方法名和方法参数,获取测试方法AddModSoureRelation的入参


2019-10-21_第5张图片

(二 )添加导向接口文件夹在testcase\case\路径下,添加目录IPISSService


2019-10-21_第6张图片

(三)添加测试文件及测试数据文件

添加测试文件test_Add_Mod_Source_Relation.py 及在data\IPISSService\文件下新建数据文件test_Add_Mod_Source_Relation.xls


2019-10-21_第7张图片


2019-10-21_第8张图片

(四) 填入excel测试数据


2019-10-21_第9张图片

你可能感兴趣的:(2019-10-21)