建一个网站 服务器机房托管价格,建筑网片是干什么用的,网站板块模板,seo短视频网页入口引流测试数据创建后需要对其删除#xff0c;不然可能产生脏数据#xff0c;对开发和测试、生产环境造成一定影响。
其接口框架是基于Python#xff0c;API规范基于REST。
产生原因
改进前#xff1a;清除资源的操作放在每个正向测试用例里#xff0c;没有在setUp和tearDown… 测试数据创建后需要对其删除不然可能产生脏数据对开发和测试、生产环境造成一定影响。
其接口框架是基于PythonAPI规范基于REST。
产生原因
改进前清除资源的操作放在每个正向测试用例里没有在setUp和tearDown中删除。
改进后在setUp中初始化资源idNone每次创建资源时会生产一个资源id然后在tearDown中判断资源的id是否为Noneif不为Nonethen delete 资源并将资源id重新赋值为None。
这样不管有没有执行成功最终都会在tearDown中删除被创建成功的资源初始化工作放在setUp中。
代码对比
改进前清除资源的操作放在每个正向测试用例里没有在setUp和tearDown中删除。代码如下 def test_konwledges_check_by_list_ok(self):lc知识点API:成功创建2个知识点后批量查询知识点详细信息\title knowledgesflag 0response self.knowledge.add_knowledges(title, flag)message 创建知识点接口返回失败code 200data self.rest_o.parse_response(response, code, message)self.knowledges_id1 data[identifier]response self.knowledge.add_knowledges(title, flag)message 创建知识点接口返回失败code 200data self.rest_o.parse_response(response, code, message)self.knowledges_id2 data[identifier]knowledge_id_str [self.knowledges_id1, self.knowledges_id2]response self.knowledge.check_konwledges_details_by_list(knowledge_id_str)#print response: str(response)message 批量查询知识点详细信息接口返回失败code 200data self.rest_o.parse_response(response, code, message)print dataassert data[self.knowledges_id1]assert data[self.knowledges_id2]self.knowledge.delete_konwledges(knowledge_id1)#放在测试用例中删除self.knowledge.delete_konwledges(knowledge_id2)#放在测试用例中删除改进后
setUp和tearDown中改进 def setUp(self):print start run KnowledgeTest知识点接口......self.knowledge Knowledge()self.lessons Lessons()self.instructional Instructional(id)self.teaching_material TeachingMaterial()self.rest_o CoRestful.Restful()self.rand_o CoRand()self.knowledges_id Noneself.knowledges_id1 Noneself.knowledges_id2 Noneself.knowledge_relation_id Nonedef tearDown(self):#判断资源的id是否为Noneif不为Nonethen delete 资源并将资源id重新赋值为Nonespan stylefont-family: Arial, Helvetica, sans-serif;/span这样不管有没有执行成功最终都会在tearDown中删除被创建成功的资源if self.knowledge_relation_id ! None:self.knowledge.delete_relation(self.knowledge_relation_id)if self.knowledges_id2 ! None:self.knowledge.delete_konwledges(self.knowledges_id2)if self.knowledges_id1 ! None:self.knowledge.delete_konwledges(self.knowledges_id1)if self.knowledges_id ! None:self.knowledge.delete_konwledges(self.knowledges_id)print ------------------------------------------------------测试用例中将其删除代码注释
def test_konwledges_check_by_list_ok(self):lc知识点API:成功创建2个知识点后批量查询知识点详细信息\title knowledgesflag 0response self.knowledge.add_knowledges(title, flag)message 创建知识点接口返回失败code 200data self.rest_o.parse_response(response, code, message)self.knowledges_id1 data[identifier]response self.knowledge.add_knowledges(title, flag)message 创建知识点接口返回失败code 200data self.rest_o.parse_response(response, code, message)self.knowledges_id2 data[identifier]knowledge_id_str [self.knowledges_id1, self.knowledges_id2]response self.knowledge.check_konwledges_details_by_list(knowledge_id_str)#print response: str(response)message 批量查询知识点详细信息接口返回失败code 200data self.rest_o.parse_response(response, code, message)print dataassert data[self.knowledges_id1]assert data[self.knowledges_id2]#注释原在测试用例中删除的代码#self.knowledge.delete_konwledges(knowledge_id1)#self.knowledge.delete_konwledges(knowledge_id2)总结
发现问题要多思考并努力把其解决。
最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你