2016-04-11 4 views
1

Ich möchte benutzerdefinierte Parameter in der pytest.ini-Datei bereitstellen und aus Code lesen.Wie benutzerdefinierte Konfiguration von pytest.ini lesen?

[pytest] 
markers = 
    regression: mark a test as regression. 
    sanity: mark a test as sanity. 
    critical: mark a test as critical. 
addopts= -sv --html=report.html 
custom_value= test 

hier möchte ich custom_value Ich habe versucht, unten haben lesen, aber es funktioniert nicht und wirft Valueerror: keine Option namens ‚custom_value‘

def test_failtest(self, request): 
    config = request.config 
    tcv = config.getoption('custom_value') 
    print "tcv->" + tcv 
+0

Lesen der Dokumente und überprüfen Ich glaube nicht, dass es benutzerdefinierte Werte in seiner Konfiguration https://pytest.org/latest/customize.html – lapinkoira

+0

@lapinkoira unterstützt, so dass dies bedeutet, dass die INI-Datei nur das Setzen gültiger Werte für einen der 'BuiltIns 'unterstützt Konfigurationsdateioptionen "[(link)] (https://docs.pytest.org/en/latest/customize.html#builtin-configuration-file-options), was dem Entwickler keine Möglichkeit gibt, beliebige Optionen zu erzeugen? Ich hoffe, eine Option zu erstellen, erweiterte Tests im Vergleich zu grundlegenden Tests konditionell auszuführen, und suchte nach etwas, das anstelle eines homebrewed Umgebungsvariablentests oder etwas ähnlichem eingebaut wurde. – jxramos

Antwort

2

Sie benötigen die verwenden pytest_addoption Haken, um die Option bekannt zu machen:

def pytest_addoption(parser): 
    parser.addini('custom_value', 'documentation of my custom value') 
Verwandte Themen