ValueError: option names {'--alluredir'} already added 报错
运行测试用例
import pytest
from WXP2P_2.test_data2.login_case import logindata_error1,logindata_error2,logindata_right
class TestLogin:
"""测试登录"""
@pytest.mark.parametrize("data",logindata_error1)#装饰测试用例。
@pytest.mark.wrong
def test_error1(self,data,int_start):
"""错误信息"""
int_start[0].login(data["use"],data["password"])
try:
assert (int_start[0].error_value()==data["expected"])
print("测试用例通过,预期结果{}与实际结果{}一致".format(data["expected"],int_start[0].error_value()))
except AssertionError as e:
print("用例失败")
raise e
finally:
int_start[0].clear()#清空输入框
# Login().login(data["use"], data["password"])#错误示范,这种调用方法,会多次打开浏览器
# Login().clear()#错误示范,这种调用方法,会多次打开网页
# @pytest.mark.parametrize("data",logindata_error2)
# def test_error2(self, data):
# """错误信息"""
# self.login.login(data["use"], data["password"])
# try:
# assert (self.login.error_value1() == data["expected"])
# print("测试用例通过,预期结果{}与实际结果{}一致".format(data["expected"], self.login.error_value1()))
# except AssertionError as e:
# print("用例失败")
# raise e
# finally:
# self.login.clear() # 清空输入框
# @pytest.mark.ok
# @pytest.mark.parametrize("data",logindata_right)#装饰测试用例
# def test_right(self,data):
# """正确的信息登录"""
# self.login.login(data["use"], data["password"])
# try:
# assert (data["expected"] in self.login.right_value())
# print("测试用例通过,预期结果{}与实际结果{}一致".format(data["expected"], self.login.right_value()))
# except AssertionError as e:
# print("用例失败")
# raise e
# # Login().login(data["use"], data["password"])#错误示范,这种调用方法,会多次打开网页
if __name__ == '__main__':
pytest.main(["-m wrong","-s"])
执行结果
Traceback (most recent call last):
File "D:/WX_P2P_ITEM/WXP2P_2/test_login.py", line 46, in <module>
pytest.main(["-m wrong","-s"])
File "D:\Python\lib\site-packages\_pytest\config\__init__.py", line 60, in main
config = _prepareconfig(args, plugins)
File "D:\Python\lib\site-packages\_pytest\config\__init__.py", line 204, in _prepareconfig
pluginmanager=pluginmanager, args=args
File "D:\Python\lib\site-packages\pluggy\hooks.py", line 289, in __call__
return self._hookexec(self, self.get_hookimpls(), kwargs)
File "D:\Python\lib\site-packages\pluggy\manager.py", line 68, in _hookexec
return self._inner_hookexec(hook, methods, kwargs)
File "D:\Python\lib\site-packages\pluggy\manager.py", line 62, in <lambda>
firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
File "D:\Python\lib\site-packages\pluggy\callers.py", line 203, in _multicall
gen.send(outcome)
File "D:\Python\lib\site-packages\_pytest\helpconfig.py", line 93, in pytest_cmdline_parse
config = outcome.get_result()
File "D:\Python\lib\site-packages\pluggy\callers.py", line 80, in get_result
raise ex[1].with_traceback(ex[2])
File "D:\Python\lib\site-packages\pluggy\callers.py", line 187, in _multicall
res = hook_impl.function(*args)
File "D:\Python\lib\site-packages\_pytest\config\__init__.py", line 684, in pytest_cmdline_parse
self.parse(args)
File "D:\Python\lib\site-packages\_pytest\config\__init__.py", line 901, in parse
self._preparse(args, addopts=addopts)
File "D:\Python\lib\site-packages\_pytest\config\__init__.py", line 846, in _preparse
self.pluginmanager.load_setuptools_entrypoints("pytest11")
File "D:\Python\lib\site-packages\pluggy\manager.py", line 282, in load_setuptools_entrypoints
self.register(plugin, name=ep.name)
File "D:\Python\lib\site-packages\_pytest\config\__init__.py", line 318, in register
ret = super(PytestPluginManager, self).register(plugin, name)
File "D:\Python\lib\site-packages\pluggy\manager.py", line 102, in register
hook._maybe_apply_history(hookimpl)
File "D:\Python\lib\site-packages\pluggy\hooks.py", line 336, in _maybe_apply_history
res = self._hookexec(self, [method], kwargs)
File "D:\Python\lib\site-packages\pluggy\manager.py", line 68, in _hookexec
return self._inner_hookexec(hook, methods, kwargs)
File "D:\Python\lib\site-packages\pluggy\manager.py", line 62, in <lambda>
firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
File "D:\Python\lib\site-packages\pluggy\callers.py", line 208, in _multicall
return outcome.get_result()
File "D:\Python\lib\site-packages\pluggy\callers.py", line 80, in get_result
raise ex[1].with_traceback(ex[2])
File "D:\Python\lib\site-packages\pluggy\callers.py", line 187, in _multicall
res = hook_impl.function(*args)
File "D:\Python\lib\site-packages\allure_pytest\plugin.py", line 21, in pytest_addoption
help="Generate Allure report in the specified directory (may not exist)")
File "D:\Python\lib\site-packages\_pytest\config\argparsing.py", line 303, in addoption
raise ValueError("option names %s already added" % conflict)
ValueError: option names {'--alluredir'} already added
这是因为pytest-allure-adaptor与allure-pytest的alluredir都被引用造成冲突
需要卸载pytest-allure-adaptor

卸载完成后,再执行测试模块
============================= test session starts ============================= platform win32 -- Python 3.6.3, pytest-4.5.0, py-1.8.0, pluggy-0.11.0 rootdir: D:\WX_P2P_ITEM\WXP2P_2 plugins: allure-pytest-2.6.5 collected 5 items / 3 deselected / 2 selected test_login.py 测试用例通过,预期结果请输入正确的手机号与实际结果请输入正确的手机号一致 .测试用例通过,预期结果请输入手机号与实际结果请输入手机号一致 .
ValueError: option names {'--alluredir'} already added 报错的更多相关文章
- moviepy音视频剪辑:使用fl_time进行时间特效处理报错ValueError: Attribute duration not set
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在使 ...
- Unity在OpenGL模式下Shader编译报错
报错信息 GLSL compilation failed: 0(21) : error C7528: OpenGL reserves names containing '__' 双击报错VS自动打开V ...
- Oracle Online Patching报错"This is not a RAC setup. OPatch cannot determine the local node name"
Oracle Online Patching报错"This is not a RAC setup. OPatch cannot determine the local node name&q ...
- 报错问题: AtrributeError:module ‘allure’ has no attribute ‘’severity_level’
问题:执行命令报错:pytest -s -q --alluredir report 报错问题: AtrributeError:module 'allure' has no attribute ''se ...
- weblogic启动报错之Unrecognized option: -jrockit
报错如下: $ ./startWebLogic.sh . . JAVA Memory arguments: -Xms512m -Xmx512m . WLS Start Mode=Production ...
- windows 8 安装 oracle 11g 报错:command line option syntax error,type command/? for help
windows 8 安装 oracle 11g 报错:command line option syntax error,type command/? for help 在windows8操作系统上安装 ...
- Android报错:WindowManager$BadTokenException: Unable to add window -- window has already been added
很久之前测试通过的代码,现在手机升级了Android7.0后一运行就崩溃,报出这样的错误,具体错误如下: Process: com.example.sho.android_anti_theft, PI ...
- tensorflow-TFRecord报错ValueError: Protocol message Feature has no "feature" field.
编写代码用TFRecord数据结构存储数据集信息是报错:ValueError: Protocol message Feature has no "feature" field.或和 ...
- 关于SVN报错 svn: E170013 E125006: contains invalid filesystem format option 'addressing logical'
在使用svn的时候,遇到了这样的一个问题 首先我使用TortoiseSVN 右键创建的repository. 之后用IDEA,配置了1.9.4版本的SVN,去commit访问这个仓库 结果出现了以下的 ...
随机推荐
- [CVE-2017-5487] WordPress <=4.7.1 REST API 内容注入漏洞分析与复现
记录下自己的复现思路 漏洞影响: 未授权获取发布过文章的其他用户的用户名.id 触发前提:wordpress配置REST API 影响版本:<= 4.7 0x01漏洞复现 复现环境: 1) Ap ...
- SqlServer2012——Select,分组,排序、插入
1.select 简单语句 --select语句 * --select子句 * AS result --select子句,可以将结果保存在result中 ~~~~~~~~~~~~~~~~~~~~~~~ ...
- throw UnsupportedOperationException
package org.usc.action; import java.util.ArrayList; import java.util.Arrays; import java.util.List; ...
- spring基于注解的IOC
曾经的XML配置: <bean id="accountService" class="com.itheima.service.impl.AccountService ...
- python 之 函数 装饰器
5.8 装饰器 1 开放封闭原则 软件一旦上线后,就应该遵循开放封闭原则,即对修改源代码是封闭的,对功能的扩展是开放的 也就是说我们必须找到一种解决方案: 能够在不修改一个功能源代码以及调用方式的前提 ...
- ubuntu 14.04 源码编译postgresql
环境 ubuntu 14.04 桌面版 postgresql 源码下载链接,本教程是使用postgresql 9.3.4 进行编译的 http://www.postgresql.org/ftp/sou ...
- 33、JSONP跨域
跨域请求数据也是可以的,只不过Ajax这技术不行,而JSONP这种数据格式可以进行跨域.很多年前,浏览器是没有跨域限制的,可以正常跨域,浏览器为了安全和隐私限制了Ajax跨域 JSONP原理就是:将函 ...
- eclipse添加tomcat运行环境
- 51 Nod 1640 天气晴朗的魔法( Kruskall )
#include <bits/stdc++.h> typedef long long LL; using namespace std; ; struct node{ LL u,v,w; n ...
- 转 载python数据分析(1)-numpy产生随机数
转自:http://blog.csdn.net/jinxiaonian11/article/details/53143141 在数据分析中,数据的获取是第一步,numpy.random 模块提供了非常 ...