Size: a a a

testing_in_python

2020 September 28

BK

Boris Krutskih in testing_in_python
Gregory Gruzdov
проверка скачивания, или проверка корректного скачивания?
у нас бывало, пустые эксельки прилетали при наличии корректного файла.
для начала проверка того что файл просто скачался без 500х))
источник

СС

Сказочный Сникерс... in testing_in_python
Boris Krutskih
для начала проверка того что файл просто скачался без 500х))
селеноид юзается?
источник

BK

Boris Krutskih in testing_in_python
Сказочный Сникерс
селеноид юзается?
нет
источник

СС

Сказочный Сникерс... in testing_in_python
ну тогда все изи. в капабилити браузера указывается директория для скачивания (желательно каждый раз разная, чтобы между потоками не было коллизий) и через любое ожидание ждешь появление нужного или любого файла (без .part постфикса)
источник

K

KulebyakO in testing_in_python
Но в директории уже может лежать файл с таким именем
источник

BK

Boris Krutskih in testing_in_python
Сказочный Сникерс
ну тогда все изи. в капабилити браузера указывается директория для скачивания (желательно каждый раз разная, чтобы между потоками не было коллизий) и через любое ожидание ждешь появление нужного или любого файла (без .part постфикса)
ну я указал, чтобы качался файл в корневую директорию, после чего пытаюсь сделать проверку на этот файл, если он есть, ассертить и после удалять сразу
источник

СС

Сказочный Сникерс... in testing_in_python
KulebyakO
Но в директории уже может лежать файл с таким именем
каким образом если на каждый тест открывается свежий браузер и ему подсовывается свежая директория?
источник

BK

Boris Krutskih in testing_in_python
Сказочный Сникерс
каким образом если на каждый тест открывается свежий браузер и ему подсовывается свежая директория?
да вроде та же самая директория)
источник

СС

Сказочный Сникерс... in testing_in_python
Boris Krutskih
да вроде та же самая директория)
ну так сделай разные. чтобы потом не огрести проблем
источник

K

KulebyakO in testing_in_python
Boris Krutskih
да вроде та же самая директория)
Тогда нужно создавать новую
источник

K

KulebyakO in testing_in_python
И удалять её в конце теста)
источник

СС

Сказочный Сникерс... in testing_in_python
зачем удалять?
источник

K

KulebyakO in testing_in_python
Сказочный Сникерс
зачем удалять?
А зачем она?
источник

BK

Boris Krutskih in testing_in_python
Чёт я запутался, зачем городить директории, если просто на каждый тест скачивания можно удалять файл перед запуском нового теста?
источник

BK

Boris Krutskih in testing_in_python
У меня сейчас немного проблема) каким способом правильно седлать ассерт?)
типа, через os.get_dir assert file_name или как?
@step
def successfully_exported(self, csv_name):
   pass
источник

СС

Сказочный Сникерс... in testing_in_python
KulebyakO
А зачем она?
ну например заархивировать всю рабочую директорию тестов в конце всего прогона, чтобы иметь доступ ко всему что тесты нагенерили
источник

K

KulebyakO in testing_in_python
Сказочный Сникерс
ну например заархивировать всю рабочую директорию тестов в конце всего прогона, чтобы иметь доступ ко всему что тесты нагенерили
А перед следующим прогоном все чистить?
источник

BK

Boris Krutskih in testing_in_python
Сделал вот-таким образом))) законно ли это?
 @step
def successfully_exported(self, csv_name):
       if path.exists(csv_name):
           print(f'File exists: {csv_name}')
           os.remove(csv_name)
       else:
           raise ValueError(f'File not found: {csv_name}')

в тесте
 @feature('1. Export detached sensors')
@allure.testcase(url=f"{JIRA}/SOFTQA-", name="TC ")
   def test_export_detached_sensors(self, sign_in_as_analytic_user):
       navigate_to(ANALYTIC_URL + 'detached-sensors')
       export.export_to_csv()
       sleep(10)

       export.successfully_exported(csv_name=f'detached-sensors-{datetime.date.today().strftime("%m-%d-%Y")}.csv')
источник

BK

Boris Krutskih in testing_in_python
единственная хрень которая меня смущает) это sleep(10)
источник

СС

Сказочный Сникерс... in testing_in_python
Boris Krutskih
единственная хрень которая меня смущает) это sleep(10)
замени на вейт
источник