Python unittest 问题?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python unittest 问题?相关的知识,希望对你有一定的参考价值。

代码如下:
@data('id', 'xpath', 'keyword', '//*[@id="hdSearchForm"]/div/div[1]/button', '薯片')
@unpack
def test_YHD(self, locator_type, locator_type1, locator, locator_1, text):
self.driver.input_text(locator_type, locator, text)
self.driver.click_element(locator_type1, locator_1)

if __name__ == '__main__':
unittest.main()

为什么会报这个错呢?
TypeError: add_test() argument after ** must be a mapping, not str

ddt.data中的数据有误
如果你直接是字符串的话,应该没有unpack的。
unpack的意思是解包,解包一般是解列表,元组和字典型,字符串不能被解包。
参考技术A ut函数的参数一般就一个self,不需要其他参数
另外你上面那两个注解@data,@unpack不知道是做什么的,在ut中似乎也没什么必要
参考技术B 你的def函数中不能有别的参数,只能有self
别的参数可以在函数定义里面传递。

selenium+python unittest实践过程之问题杂集

1.列表选择项后直接获取文本内容获取不到,应该获取选择后显示的button的值

2.取值后的值带有空格,可以使用.strip()删除前后空格,以便断言

3.取值后有些值需要对类型进行转换才能断言成功

4.对于checkbox以及分页的遍历遇到的问题

每次勾选checkbox点击查询或者是点击页数按钮,页面都会刷新,webelement获取的元素过期,for循环的遍历失败

报错:

Error:
selenium.common.exceptions.StaleElementReferenceException: Message: The element reference of <input> stale: either the element is no longer attached to the DOM or the page has been refreshed

目前没有找到解决的方法,亟待大神帮忙

5.使用sublime软件写代码,运行脚本后发现经常出现这个错误:

unindent does not match any outer indentation level

找了半天的错误最后才发现是空格缩进的问题:

所以查看>缩进>使用空格缩进,这样就可以搞定了

后期会继续记录遇到的问题......

以上是关于Python unittest 问题?的主要内容,如果未能解决你的问题,请参考以下文章

Python基础入门-unittest单元测试框架

Pytest VS Unittest 简单说一下之间的优缺点

unittest单元测试框架总结

unittest测试框架_4_装饰器

unittest 用例编写,套件执行

pytest接口自动化测试框架 | unittest与pytest的区别