小编Fab*_*ich的帖子

有没有办法控制pytest-xdist如何并行运行测试?

我有以下目录布局:

runner.py
lib/
tests/
      testsuite1/
                 testsuite1.py
      testsuite2/
                 testsuite2.py
      testsuite3/
                 testsuite3.py
      testsuite4/
                 testsuite4.py
Run Code Online (Sandbox Code Playgroud)

testsuite*.py模块的格式如下:

import pytest 
class testsomething:
      def setup_class(self):
          ''' do some setup '''
          # Do some setup stuff here      
      def teardown_class(self):
          '''' do some teardown'''
          # Do some teardown stuff here

      def test1(self):
          # Do some test1 related stuff

      def test2(self):
          # Do some test2 related stuff

      ....
      ....
      ....
      def test40(self):
          # Do some test40 related stuff

if __name__=='__main()__'
   pytest.main(args=[os.path.abspath(__file__)])

我遇到的问题是我想并行执行'testsuites',即我希望testsuite1,testsuite2,testsuite3和testsuite4并行开始执行,但是测试套件中的单个测试需要连续执行.

当我使用py.test中的'xdist'插件并使用'py.test -n 4'启动测试时,py.test正在收集所有测试并随机地在4个工作者之间平衡测试.这导致在'testsuitex.py'模块中每次测试时都会执行'setup_class'方法(这违背了我的目的.我希望每个类只执行一次setup_class,然后在那里连续执行测试).

基本上我想要的执行看起来像是:

worker1: executes all …

python pytest xdist

29
推荐指数
3
解决办法
7253
查看次数

丢失了在eclipse中折叠代码的能力

我已经失去了在Eclipse(Helios)中折叠代码的能力.

我一直使用ctrl+ Shift+ /但是现在它没有在一个特定项目中做任何事情,并且所有"+"符号都从左侧栏中消失了.

谁能告诉我我做了什么?在另一个项目中它很好,但是我正在研究的那个我不能,而且非常令人沮丧!

eclipse

24
推荐指数
2
解决办法
9141
查看次数

数据框对象没有属性

我知道之前曾问过这样的问题,我已经检查了所有的答案,我已经多次尝试找到解决方案,但是徒劳无功.实际上我使用Pandas调用Dataframe.我上传了一个csv.file.

来自csv的数据集

当我输入data.Countrydata.Year,我得到的第一纵队,并显示在第二个.但是当我输入时data.Number,每次它都会给我这个错误:

AttributeError:'DataFrame'对象没有属性'Number'.

python csv pandas

15
推荐指数
3
解决办法
9万
查看次数

带有字符串的Excel中的图表编号

我有一些数据,我将其放入图表和格式.有一些业务规则,其中一些数据是"受保护的",如示例中所示.使用"受保护"(或任何其他单词)excel这一单词绘制图形时出现的问题是指向X轴底部的图形.我希望图表看起来像第二张图表,但我想避免绘制一个隐藏的列,因为我认为这会让我的高级用户感到困惑.

图表示例

任何想法或见解都表示赞赏!

excel excel-charts

13
推荐指数
1
解决办法
304
查看次数

如何列出 Python 包的额外功能

一些 Python 包有额外的功能,可以通过将它们放在括号中来安装,例如requests包的额外安全性

pip install requests[security]
Run Code Online (Sandbox Code Playgroud)

有没有办法列出给定包的所有附加功能?

我在 pip 文档中找不到类似的东西。

python pip package

6
推荐指数
1
解决办法
297
查看次数

如何在 Junit5 中设置嵌入式 ApacheDS

在关于在 Junit 测试中嵌入 ApacheDS 服务器的 ApacheDS 文档中,他们只提到了 Junit4 使用的示例

@RunWith(FrameworkRunner.class)
Run Code Online (Sandbox Code Playgroud)

或者

@ClassRule
public static CreateLdapServerRule serverRule = new CreateLdapServerRule();
Run Code Online (Sandbox Code Playgroud)

RunWithClassRule在 Junit5 中不可用。

如何使用嵌入式 ApacheDS LdapServer 运行 Junit5 测试?

ldap apacheds junit5

6
推荐指数
1
解决办法
216
查看次数

在pytest-xdist安装之后,Pytest无法识别-n选项

我已经在一个正常工作的pytest环境中安装了pytest-xdist:

pip install pytest-xdist
Run Code Online (Sandbox Code Playgroud)

我收到了这个输出

Downloading/unpacking pytest-xdist
  Downloading pytest-xdist-1.10.tar.gz
  Running setup.py egg_info for package pytest-xdist

    no previously-included directories found matching '.hg'
Downloading/unpacking execnet>=1.1 (from pytest-xdist)
  Downloading execnet-1.2.0.tar.gz (163kB): 163kB downloaded
  Running setup.py egg_info for package execnet

    warning: no files found matching 'conftest.py'
Requirement already satisfied (use --upgrade to upgrade): pytest>=2.4.2 in /Users/sal/Documents/code/Python/VirtualEnv/Spring/lib/python2.7/site-packages (from pytest-xdist)
Requirement already satisfied (use --upgrade to upgrade): py>=1.4.20 in /Users/sal/Documents/code/Python/VirtualEnv/Spring/lib/python2.7/site-packages (from pytest>=2.4.2->pytest-xdist)
Installing collected packages: pytest-xdist, execnet
  Running setup.py install for pytest-xdist

    no previously-included directories found …
Run Code Online (Sandbox Code Playgroud)

python pytest xdist

5
推荐指数
2
解决办法
1334
查看次数

在Android中执行不带webview的javascript

我正试图在我的Android应用程序中执行JS功能.该功能位于网站上的.js文件中.

我没有使用webview,我想执行JS函数,因为它发送了我想要的请求.

在我的浏览器中的控制台,我只需要做question.vote(0);,我怎么能在我的应用程序中做到这一点?

javascript android webview

5
推荐指数
2
解决办法
7603
查看次数

pytest-xdist:LookupError:setuptools-scm无法检测版本

安装时pytest-xdist,我收到此错误:

Collecting pytest-xdist>=1.15.0
  Downloading https://company.com/pypi/packages/dc/b2/a59db3ef996b93c3ef35dbbc33557a71ef67a6839d94a52c88eeb1086002/pytest-xdist-1.15.0.tar.gz (87kB)
    100% |????????????????????????????????| 92kB 70.2MB/s
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-vyEgO5/pytest-xdist/setup.py", line 37, in <module>
        'Programming Language :: Python :: 3',
      File "/usr/lib/python2.7/distutils/core.py", line 111, in setup
        _setup_distribution = dist = klass(attrs)
      File "/home/company/package_name/env/local/lib/python2.7/site-packages/setuptools/dist.py", line 318, in __init__
        _Distribution.__init__(self, attrs)
      File "/usr/lib/python2.7/distutils/dist.py", line 287, in __init__
        self.finalize_options()
      File "/home/company/package_name/env/local/lib/python2.7/site-packages/setuptools/dist.py", line 376, in finalize_options
        ep.load()(self, ep.name, value)
      File "build/bdist.linux-x86_64/egg/setuptools_scm/integration.py", line …
Run Code Online (Sandbox Code Playgroud)

python pytest xdist

5
推荐指数
1
解决办法
1153
查看次数

如何在不使用 INT96 格式的时间戳列的情况下将 spark 数据帧保存到镶木地板?

我有一个 spark 数据框,我想将它保存为 parquet,然后使用 parquet-avro 库加载它。

我的数据框中有一个时间戳列,它被转换为镶木地板中的 INT96 时间戳列。但是 parquet-avro不支持 INT96格式并抛出。

有没有办法避免它?在 avro 支持的东西中将时间戳写入镶木地板时,是否可以更改 Spark 使用的格式?

我目前使用

date_frame.write.parquet("path")
Run Code Online (Sandbox Code Playgroud)

avro apache-spark parquet

3
推荐指数
1
解决办法
3444
查看次数