Size: a a a

testing_in_python

2021 February 26

СС

Сказочный Сникерс... in testing_in_python
была где то либа которая из протобафа делала дикт
источник

СС

Сказочный Сникерс... in testing_in_python
а, ну у самого протобафа есть json_format. либо protobuf-to-json либа
источник

V

Vita in testing_in_python
а можно пример?

from google.protobuf import <func>

print(<func>(my_list))

Так что ль?
источник

V

Vita in testing_in_python
а, все, нашел)

from google.protobuf.json_format import MessageToJson

print(MessageToJson(my_list))
источник
2021 March 02

BK

Boris Krutskih in testing_in_python
Всем привет, кто сталкивался с проблемой когда тест качает файл допустим расрширение .exe и хром выкидывает окно "Keep\Discard" file типа безопасность. Так вот, каким образом это можно отключить, чтобы он качал файл без этого предупреждения?
пробовал передать в options chrome
browser_options.add_argument("--allow-running-insecure-content")
browser_options.add_argument("--disable-web-security")

но почему-то из этого ничего не сработало
источник

Н

Нурсултан in testing_in_python
Boris Krutskih
Всем привет, кто сталкивался с проблемой когда тест качает файл допустим расрширение .exe и хром выкидывает окно "Keep\Discard" file типа безопасность. Так вот, каким образом это можно отключить, чтобы он качал файл без этого предупреждения?
пробовал передать в options chrome
browser_options.add_argument("--allow-running-insecure-content")
browser_options.add_argument("--disable-web-security")

но почему-то из этого ничего не сработало
по-моему так сделать нельзя (если только что-то с профилями мутить). можно напрямую ссылку забирать на файл.

тут рассматриваются варианты
https://habr.com/ru/post/497922/
источник

BK

Boris Krutskih in testing_in_python
Merg
class MyConfig:
         ….
         db: Database


в set_config создавать нужный экземпляр в зависимости от переданного параметра
Возвращаясь к теме)
Как мне в def init правильно передать значения, чтобы определить --db=alpha or beta?
https://i.imgur.com/bxDqAWQ.png
источник

IS

Idi Suda in testing_in_python
ну в ините сделай параметр дб и в фикстуре создавай типа

_ = request.config.getoption("--db")
Database(database = _)
источник

IS

Idi Suda in testing_in_python
точнее

_ = request.config.getoption("--db")
Myconfig(..., db=Database(database=_))
источник
2021 March 03

S

Sergey in testing_in_python
Boris Krutskih
Всем привет, есть небольшой вопрос по pytest-xdist, подскажите каким образом я могу запустить в паралель все сьюты кроме той которая зачёркнута на скрине?
По ней нужно чтобы оставалась очёредность.
Пытался найти в доке как это сделать, либо плохо искал) либо там нет такого приёма
Наткнулся на обсуждение вашего вопроса, у меня тоже проблема из  разряда группировки тестов по воркерам, решение подсмотрел в ссылке https://github.com/pytest-dev/pytest-xdist/issues/18#issuecomment-392558907. А именно, отнаследовать LoadScopeScheduling и переопределить _split_scope. У меня задача группировать тесты по параметризации, т.е тесты с одинаковыми значениями на первых параметрах должны идти на один и тот же воркер.
источник

S

Sergey in testing_in_python
Исправил ссылку
источник

BK

Boris Krutskih in testing_in_python
Idi Suda
точнее

_ = request.config.getoption("--db")
Myconfig(..., db=Database(database=_))
Что-то я туплю, таким образом имел ввиду?
https://i.imgur.com/YLzlwKH.png
источник

СС

Сказочный Сникерс... in testing_in_python
Boris Krutskih
Что-то я туплю, таким образом имел ввиду?
https://i.imgur.com/YLzlwKH.png
MyConfig(




db=Database(request.conig.getoption('—db'))
)
источник

BK

Boris Krutskih in testing_in_python
Сказочный Сникерс
MyConfig(




db=Database(request.conig.getoption('—db'))
)
Правильно ли я понимаю https://i.imgur.com/sVlDLko.png
Теперь мне просто нужно создать фикстуру типа
@pytest.fixture
def db_connector():
    # Создать dict с дб alpha, beta
    return Database(db=Dict[set_config.db])

и потом эту фикстуру использовать в методах где у меня идёт выполнение запроса к БД?
источник

BK

Boris Krutskih in testing_in_python
в django бл) легче это всё было))) выбор между envom) а тут получается такое...
Правильно ли я вообще сделал что вынес класс в отедльный файл, а не запихнул это всё сразу в conftest)
источник

СС

Сказочный Сникерс... in testing_in_python
Boris Krutskih
Правильно ли я понимаю https://i.imgur.com/sVlDLko.png
Теперь мне просто нужно создать фикстуру типа
@pytest.fixture
def db_connector():
    # Создать dict с дб alpha, beta
    return Database(db=Dict[set_config.db])

и потом эту фикстуру использовать в методах где у меня идёт выполнение запроса к БД?
не знаю насколько правильно, намудрено слишком много. для всего лишь одного параметра у тебя будет 2 фикстуры и класс конфига
источник

СС

Сказочный Сникерс... in testing_in_python
можно было сделать просто так


@pytest.fixture(scope='session')
def db_connector(request):
   db = Database(request.config.getoption('—db')
   db.open_connection()
   return db
источник

BK

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


@pytest.fixture(scope='session')
def db_connector(request):
   db = Database(request.config.getoption('—db')
   db.open_connection()
   return db
ну так я пробовал, только остаётся одна беда куда дикт передавать
@pytest.fixture
def db_connector(request):
   DATABASE = {
       'alpha': {
           'DB_HOST': DB_HOST,
           'DB_USER': DB_USER,
           'DB_PASSWORD': DB_PASSWORD,
           'DB_NAME': DB_NAME,
       },
       'beta': {
           'DB_HOST_BETA': DB_HOST_BETA,
           'DB_USER_BETA': DB_USER_BETA,
           'DB_PASSWORD_BETA': DB_PASSWORD_BETA,
           'DB_NAME_BETA': DB_NAME_BETA,
       }
   }

   db = Database(request.config.getoption('--db'))
   db.open_connection()

   return db
источник

M

Merg in testing_in_python
Database(DATABASE[request.config.getoption('--db’)])
источник

СС

Сказочный Сникерс... in testing_in_python
Boris Krutskih
ну так я пробовал, только остаётся одна беда куда дикт передавать
@pytest.fixture
def db_connector(request):
   DATABASE = {
       'alpha': {
           'DB_HOST': DB_HOST,
           'DB_USER': DB_USER,
           'DB_PASSWORD': DB_PASSWORD,
           'DB_NAME': DB_NAME,
       },
       'beta': {
           'DB_HOST_BETA': DB_HOST_BETA,
           'DB_USER_BETA': DB_USER_BETA,
           'DB_PASSWORD_BETA': DB_PASSWORD_BETA,
           'DB_NAME_BETA': DB_NAME_BETA,
       }
   }

   db = Database(request.config.getoption('--db'))
   db.open_connection()

   return db
```
class Database:

   def __init__(self, host, user, password, db_name):
       self.host = host
       self.user = user
       self.password = password
       self.db_name = db_name


@pytest.fixture
def db_connector(request):
   DATABASES = {
       'alpha': {
           '
host': DB_HOST,
           '
user': DB_USER,
           '
password': DB_PASSWORD,
           '
db_name': DB_NAME,
       },
       'beta': {
           '
host': DB_HOST_BETA,
           '
user': DB_USER_BETA,
           '
password': DB_PASSWORD_BETA,
           '
db_name': DB_NAME_BETA,
       }
   }

   db = Database(**DATABASES[request.config.getoption('--db')])
   db.open_connection()

   return db

```
источник