Hej,
Chce napisać test instalacji aplikacji, ale bez połączenia z internetem (w rzeczywistości net jest potrzebny do tej czynnosci) . Możecie mi podpowiedzieć jak zasymulowac w teście brak internetu?
EDIT:
Jest to apka desktop, która po instalacji na PC otwiera się w zwykłej przeglądarce.
Apka ma przypisaną licencję użytkownika, którą można aktualizować bez połączenia z internetem.
Dlatego zastanawiam się jak można ‘symulować’ brak połączenia z internetem. Czy to w ogóle możliwie
Dzieki
Pozdrawiam
Kasia 🙂
Generalnie jest kilka dróg aby to zrobić.
W zależności od sytemu można wszystko zrealizować z poziomu graficznego. Na Windows używając na przykład program klikający AutoIT https://www.autoitscript.com/site/ i za pomocą niego zasymulować akcje manualnego wyłączenia połączenia sieciowego, odłączenia interfejsów sieciowych
Sam interfejs sieciowy można włączyć i wyłączyć za pomocą konsoli. I znowu na Windows można to zrobić uruchamiając konsolę z prawami administracyjnymi oraz wpisując komendy:
netsh interface show interface
i wtedy zobaczymy wszystkie interfejsy – czy są aktywne (Enabled) oraz ich nazwy (Interface Name)
Następnie wystarczy wywołać polecenie z nazwą naszego interfejsu np dla nazwy “Local Area Connection” :
netsh interface set interface name="Local Area Connection" admin=disabled
i już nie mamy połączenia internetowego z tego interfejsu (jeśli masz więcej interfejsów które trzeba deaktywaować np wi-fi to należy to zrobić)
Potem można wykonać test, który wymaga braku połączenia sieciowego
Po wszystkim wystarczy wpisać w konsolę
netsh interface set interface name="Local Area Connection" admin=enabled
Znając te polecenia można wywołać je z poziomu Pythona np takim skryptem:
import os import time os.system('netsh interface show interface') #turning off os.system('netsh interface set interface name="Ethernet" admin=disabled') #waiting 60 seconds time.sleep(60) #turning on os.system('netsh interface set interface name="Ethernet" admin=enabled')
No i ten skrypt (wywołany z konsoli lub IDE PyCharma uruchomionego z prawami administratora) będzie automatycznie wyłączał na 60 sekund internet.
Myślę że tyle wiedzy wystarczy aby zrobić automatycznie to czego potrzebujesz czyli w testach uruchomić taki skrypt, który umożliwi działania na maszynie z deaktywowanymi interfejsami sieciowymi
Oczywiście jest mnóstwo innych sposobów jak można to zrobić ale tutaj przedstawiamy najprostszy jaki można znaleźć na Windowsa.
Powodzenia w automatyzacji!
Hej,
Wszystko zależy od tego jaki test chcesz przeprowadzić 😉
Jak wygląda scenariusz tego testu? Jakie są jego kroki? Mowa o testach desktopowych czy web?
Pozdrawiam,
K