Uruchamianie i testowanie funkcji platformy Azure w środowisku lokalnym

Ukończone

W poprzednim ćwiczeniu utworzono projekt funkcji platformy Azure przy użyciu archetypu narzędzia Maven dla platformy Azure. Następnym zadaniem jest skompilowanie funkcji i uruchomienie jej lokalnie w celu sprawdzenia, czy działa.

W tej lekcji dowiesz się więcej o narzędziach Azure Functions Core Tools, które ułatwiają uruchamianie i testowanie funkcji lokalnie. Dowiesz się również, jak otworzyć port HTTP na potrzeby testowania, jak uruchomić funkcję w usłudze Cloud Shell i jak przetestować funkcję w przeglądarce internetowej.

Informacje o narzędziach Azure Functions Core Tools

Azure Functions Core Tools to zestaw narzędzi do kompilowania i testowania funkcji platformy Azure w środowisku lokalnym przy użyciu emulatora terminalu lub wiersza polecenia. Chociaż tworzone funkcje platformy Azure są uruchomione w środowisku lokalnym, mogą podczas testowania uzyskiwać dostęp do działających usług platformy Azure. Po zakończeniu testowania i gotowości funkcji do opublikowania możesz wdrożyć aplikację funkcji w subskrypcji platformy Azure.

Obecnie dostępne są trzy wersje narzędzi Azure Functions Core Tools. Jednak zgodnie z ogólną zasadą, chyba że masz konkretną potrzebę używania starszej wersji, zawsze należy używać najnowszej wersji podczas opracowywania funkcji na potrzeby wdrażania na platformie Azure. W tym module użyjesz usługi Azure Cloud Shell w piaskownicy platformy Learn, która ma najnowszą wersję narzędzi Azure Functions Core Tools.

Uwaga

Jeśli używasz swojego osobistego konta platformy Azure, a nie usługi Cloud Shell w piaskownicy witryny Learn, zapoznaj się z artykułem Korzystanie z narzędzi Azure Functions Core Tools, który zawiera opisy, wymagania i instrukcje instalacji różnych wersji narzędzi Azure Functions Core Tools.

Konfigurowanie środowiska usługi Cloud Shell na potrzeby testowania

Podczas testowania aplikacji internetowej działającej w usłudze Cloud Shell masz dwa różne sposoby testowania aplikacji:

  1. Za pomocą usługi Cloud Shell można otworzyć port zewnętrzny do testowania, który kieruje żądania HTTP do portu localhost wystąpienia usługi Cloud Shell:

    • Aby otworzyć port 7071 z usługi Cloud Shell, użyj następującego polecenia cURL:

      curl -X POST http://localhost:8888/openPort/7071
      
    • Po zakończeniu testowania użyj następującego polecenia cURL, aby zamknąć port:

      curl -X POST http://localhost:8888/closePort/7071
      
  2. Możesz otworzyć wiele wystąpień usługi Cloud Shell, aby przetestować aplikację lokalnie:

    • Aplikacja będzie uruchomiona w jednym wystąpieniu.

    • Drugie wystąpienie będzie używane do testowania aplikacji przy użyciu narzędzia cURL.

W następnym ćwiczeniu użyjesz pierwszej metody, aby otworzyć port.

Uruchamianie funkcji w usłudze Cloud Shell

Po otwarciu portu na potrzeby testowania następnym zadaniem jest skompilowanie i wykonanie funkcji. Aby to zrobić, wykonaj następujące kroki:

  1. W usłudze Cloud Shell zmień katalog na folder główny projektu.

  2. Aby skompilować aplikację, użyj następującego polecenia narzędzia Maven:

    mvn clean package
    
  3. Aby uruchomić aplikację, użyj następującego polecenia narzędzia Maven:

    mvn azure-functions:run
    

    Gdy narzędzie Maven przygotowuje środowisko uruchomieniowe dla funkcji, zostanie wyświetlone logo narzędzi Azure Functions Core Tools:

    Image showing the Azure Function Core tools logo.

  4. Po zakończeniu testowania użyj polecenia CTRL+C z usługi Azure Cloud Shell, aby zatrzymać serwer.

Testowanie funkcji przy użyciu żądań HTTP

W tym module użyjesz pojedynczego wystąpienia usługi Cloud Shell. W związku z tym należy przetestować aplikację, otwierając nową kartę w przeglądarce internetowej. Na pasku adresu przeglądarki wprowadź adres URL podobny do następującego przykładu:

https://gateway.westus.console.azure.com/n/cc-12345678/cc-12345678/proxy/7071/api/HttpExample?name=Bob

Jeśli jednak używasz wielu wystąpień usługi Cloud Shell, możesz użyć następującego polecenia cURL, aby przetestować aplikację z oddzielnego wystąpienia powłoki:

curl http://localhost:7071/api/HttpExample?name=Bob

W następnym ćwiczeniu użyjesz informacji poznanych w tej lekcji. Otwierasz port testowy, uruchamiasz funkcję w usłudze Cloud Shell i określasz adres URL, którego chcesz użyć, aby przetestować funkcję w przeglądarce internetowej.