Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020
Testování uživatelského rozhraní (UI) v rámci kanálu verze je skvělý způsob detekce neočekávaných změn a nemusí být obtížné. Tento článek popisuje použití Selenium k otestování webu během průběžného nasazování a automatizace testů. Zvláštní aspekty, které platí při spouštění testů uživatelského rozhraní, jsou popsány v aspektech testování uživatelského rozhraní.
Testy jednotek obvykle spouštíte v rámci pracovního postupu sestavení a funkční (UI) testy v rámci procesu nasazení po nasazení aplikace (obvykle do prostředí pro kontrolu kvality).
Další informace o automatizaci prohlížeče Selenium najdete v tématech:
Vytvoření testovacího projektu
Vzhledem k tomu, že neexistuje žádná šablona pro testování Selenium, nejjednodušší způsob, jak začít, je použít šablonu Testování jednotek. Tím se automaticky přidají odkazy na testovací architekturu a umožní vám spustit a zobrazit výsledky z Průzkumníka testů sady Visual Studio.
V sadě Visual Studio otevřete nabídku Soubor a zvolte Nový projekt a pak zvolte Test a vyberte Projekt testování jednotek. Případně otevřete místní nabídku pro řešení a zvolte Přidat, poté Nový projekt a nakonec Projekt testování jednotek.
Po vytvoření projektu přidejte odkazy na Selenium a ovladače prohlížeče, které se používají ke spuštění testů. Otevřete místní nabídku projektu testů jednotek a zvolte Spravovat NuGet balíčky. Do projektu přidejte následující balíčky:
- Selenium.WebDriver
- Selenium.Firefox.WebDriver
- Selenium.WebDriver.ChromeDriver
- Selenium.WebDriver.IEDriver
Vytvořte testy. Například následující kód vytvoří výchozí třídu s názvem MySeleniumTests , která provádí jednoduchý test na webu Bing.com. Nahraďte obsah funkce TheBingSearchTest kódem Selenium potřebným k otestování webové aplikace nebo webu. Změňte přiřazení prohlížeče ve funkci SetupTest na prohlížeč, který chcete použít pro test.
using System; using System.Text; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Firefox; using OpenQA.Selenium.Chrome; using OpenQA.Selenium.IE; namespace SeleniumBingTests { /// <summary> /// Summary description for MySeleniumTests /// </summary> [TestClass] public class MySeleniumTests { private TestContext testContextInstance; private IWebDriver driver; private string appURL; public MySeleniumTests() { } [TestMethod] [TestCategory("Chrome")] public void TheBingSearchTest() { driver.Navigate().GoToUrl(appURL + "/"); driver.FindElement(By.Id("sb_form_q")).SendKeys("Azure Pipelines"); driver.FindElement(By.Id("sb_form_go")).Click(); driver.FindElement(By.XPath("//ol[@id='b_results']/li/h2/a/strong[3]")).Click(); Assert.IsTrue(driver.Title.Contains("Azure Pipelines"), "Verified title of the page"); } /// <summary> ///Gets or sets the test context which provides ///information about and functionality for the current test run. ///</summary> public TestContext TestContext { get { return testContextInstance; } set { testContextInstance = value; } } [TestInitialize()] public void SetupTest() { appURL = "http://www.bing.com/"; string browser = "Chrome"; switch(browser) { case "Chrome": driver = new ChromeDriver(); break; case "Firefox": driver = new FirefoxDriver(); break; case "IE": driver = new InternetExplorerDriver(); break; default: driver = new ChromeDriver(); break; } } [TestCleanup()] public void MyTestCleanup() { driver.Quit(); } } }Spusťte test Selenium místně pomocí Průzkumníka testů a zkontrolujte, jestli funguje.
Definování kanálu buildu
Potřebujete kanál buildu kontinuální integrace (CI), který sestaví testy Selenium. Další informace najdete v tématu Vytvoření desktopové aplikace .NET pro Windows.
Vytvoření webové aplikace
K otestování potřebujete webovou aplikaci. Můžete použít existující aplikaci nebo ji nasadit v kanálu verze průběžného nasazování (CD). Předchozí příklad kódu spouští testy na Bing.com. Podrobnosti o tom, jak nastavit vlastní kanál verze pro nasazení webové aplikace, najdete v tématu Nasazení do Azure Web Apps.
Rozhodnutí o nasazení a otestování aplikace
Aplikaci můžete nasadit a otestovat pomocí agenta hostovaného Microsoftem v Azure nebo agenta v místním prostředí, který na cílové servery nainstalujete.
Při použití agenta hostovaného Microsoftem byste měli použít webové ovladače Selenium, které jsou předinstalované na agentech Systému Windows (agenti s názvem Hosted VS 20xx), protože jsou kompatibilní s verzemi prohlížeče nainstalovanými na imagích agentů hostovaných Microsoftem. Cesty ke složkám obsahujícím tyto ovladače lze získat z proměnných prostředí s názvem
IEWebDriver(Internet Explorer),ChromeWebDriver(Google Chrome) aGeckoWebDriver(Firefox). Ovladače nejsou předinstalované na jiných agentech, jako jsou agenti Linuxu, Ubuntu a macOS. Podívejte se také na aspekty testování uživatelského rozhraní.Pokud používáte samohostovaného agenta, kterého nasazujete na cílové servery, musí být agenti nakonfigurovaní tak, aby běželi interaktivně s povoleným automatickým přihlášením. Podívejte se na aspekty sestavování a vydávání agentů a testování uživatelského rozhraní.
Zahrnutí testu do verze
Pokud nemáte existující pipelinu vydání, která nasazuje vaši webovou aplikaci:
Otevřete stránku Verze v sekci Azure Pipelines v Azure DevOps nebo v centru Sestavení a Vydání v TFS (viz navigace ve webovém portálu) a zvolte ikonu +, poté zvolte Vytvořit kanál vydání.
Vyberte šablonu nasazení služby Aplikace Azure a zvolte Použít.
V části Artefakty na kartě Kanál zvolte + Přidat. Vyberte artefakty sestavení a zvolte Přidat.
Vyberte ikonu Trigger průběžného nasazování v části Artefakty na kartě Kanál. V podokně Trigger průběžného nasazování aktivujte trigger, aby se vytvářela nová verze z každého sestavení. Přidejte filtr pro výchozí větev.
Otevřete kartu Úkoly, vyberte oddíl Fáze 1 a zadejte informace o předplatném a název webové aplikace, do které chcete aplikaci a testy nasadit. Tato nastavení se použijí na úlohu Nasadit Aplikace Azure Service.
Pokud nasazujete aplikaci a testy do prostředí, kde cílové počítače, které hostují agenty, nemají nainstalovanou sadu Visual Studio:
Na kartě úlohy pipeliny vydání zvolte + ikonu v sekci Spustit na agentovi. Vyberte úlohu instalačního programu testovací platformy sady Visual Studio a zvolte Přidat. Ponechte všechna nastavení na výchozích hodnotách.
Úkol můžete snadněji najít pomocí vyhledávacího textového pole.
Na kartě úlohy pipeliny vydání zvolte + ikonu v sekci Spustit na agentovi. Vyberte úlohu Visual Studio Test a zvolte Přidat.
Pokud jste do kanálu přidali úlohu Visual Studio Test Platform Installer, změňte nastavení verze testovací platformy v Možnosti spuštění úlohy Visual Studio Test na Installed by Tools Installer.
Jak mohu předat parametry svému testovacímu kódu ze sestavovacího kanálu?
Uložte potrubí pro vydání a spusťte nové vydání. Můžete to udělat tak, že zařadíte do fronty nový build CI nebo zvolíte možnost Vytvořit verzi z rozevíracího seznamu Release v kanálu vydání.
Pokud chcete zobrazit výsledky testů, otevřete souhrn vydané verze na stránce Vydané verze a zvolte odkaz Testy .