Piszę niektóre testy xUnit dla niektórych klas pomocniczych, które opierają się na niektórych ustawieniach konfiguracji, zwykle przechowywane w App.config lub Web.config projektu wykonawczego.App.config dla Xunit
config wygląda następująco:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="FileNamePattern" value="\\d{8}_\\w{4:20}\.png"/>
<!-- and the likes -->
</appSettings>
</configuration>
biegnę xUnit 1.9 z prowadnicą (GUI) i xUnit xunit.gui.clr4.exe biegacza konsoli (na serwerze Jenkins CI). Obecnie mogę "wstrzyknąć" te wartości konfiguracyjne do środowisk testowych, ręcznie konfigurując pliki xunit.gui.clr4.exe.config i xunit.console.exe.config; jest to jednak nużące i podatne na błędy.
Mogłem także sfałszować te ustawienia konfiguracji w urządzeniu. Ale używanie tego samego urządzenia w 10 różnych plikach jest raczej powtarzalne.
Czy istnieje lepszy sposób na sfałszowanie tych ustawień konfiguracyjnych za pomocą narzędzia xUnit, na przykład dostarczenie pliku App.config do projektu testowego?
Utworzę pośrednie ISettings. Możesz załadować app.config do tego. Wszystko, co musisz zrobić, to wyłudzić interfejs za pomocą frameworka takiego jak Moq. Bardzo lubię abstrakcyjne pliki konfiguracyjne jak najwięcej. –