Sdílet prostřednictvím


Souběžné změny testovací databáze

Důležité

31. března 2025 je naplánované vyřazení sady Visual Studio App Center. I když můžete Visual Studio App Center dál používat, dokud nebude plně vyřazený, existuje několik doporučených alternativ, na které můžete zvážit migraci.

Přečtěte si další informace o časových osách podpory a alternativách.

Skripty testů často mění externí data a testují změny. Proces obvykle zahrnuje nastavení dat zpět do známého nebo počátečního stavu, proti kterému byly testy zapsány. Tento proces může použít testovací databázi s přihlašovacími údaji pro testovacího uživatele.

Tento běžný scénář funguje dobře pro jeden test na jednom zařízení najednou. Pokud testujete na více zařízeních současně, můžou testy způsobit konfliktní změny v testovací databázi.

Abyste se vyhnuli konfliktních změnám databáze, můžete použít následující přístupy, které zhruba zvyšují pořadí složitosti a výkonu:

  1. Spustit pouze jeden test najednou.

  2. Neupravujte běžná data nebo nespoléhejte na data, která by se vaše testy mohly změnit.

  3. Napodobení dat v testech

  4. Vytvořte několik testovacích uživatelů s jedinečnými přihlašovacími údaji, takže se souběžná zařízení přihlašují jako různí uživatelé. Pomocí indexu zařízení získáte jedinečný identifikátor pro každé zařízení během testovacího spuštění a pomocí identifikátoru vyhledejte přihlašovací údaje uživatele. Tento přístup funguje jenom pro více zařízení ve stejném testovacím běhu, ne pro více souběžných testovacích běhů.

    Testovací skripty App Center v Calabash, Appium a Xamarin.UITest mají přístup k XTC_DEVICE_INDEX proměnné prostředí. Proměnná je řetězec s rozsahem 0N-1, kde N je počet zařízení, na kterých test běží. Tuto proměnnou můžete použít k vyhledání přihlašovacích údajů při paralelním spuštění testu na více zařízeních. Proměnná je k dispozici pouze pro testovací skript, nikoli pro aplikaci, která se testuje.

  5. Vytvořte externí webovou službu, která testuje přístup za běhu, aby získala jedinečnou sadu přihlašovacích údajů. Toto řešení je nejsložitější, ale je také nejobecnější.