L oop не работает внутри python при вызове из Node js с использованием Cucumber и дочернего процесса - PullRequest
0 голосов
/ 04 мая 2020

class main:

 async def MasterPool(Size,Assay_PoolSize,TubeID,MasterPoolID,MPSize):


     x=12
     #await time.sleep(10000)
     i=0
     z = Lis(Size,Assay_PoolSize,TubeID)
     t=int(MPSize)-1
     print(t)


     while i==0:
             j = len(os.listdir(r'C:\Test'))
             print(j)

             if j==0:
                 print("MasterPoolInProgress")
                 with open(r'C:\Users\Katyald\Documents\MasterPool\MAS (1).pol','r') as file:
                     data = file.readlines()
                 with open(r'C:\Test\stats.pol', 'w') as f:
                     for i, line in enumerate(data,0):
                         if "Pool Size:" in line:
                             f.writelines("Pool Size: {}\n".format(MPSize))
                         else:       
                             if "Master Pool ID:" in line:
                                 f.writelines("Master Pool ID:{}\n".format(MasterPoolID))
                                 for i in range (0,int(MPSize)):
                                     f.writelines(z[i]+ "\n")

                             else:

                                 f.write(data[i])
                 break
           main.MasterPool(int(sys.argv[1]),str(sys.argv[2]),str(sys.argv[3]),str(sys.argv[4]),int(sys.argv[5]))

Я пытаюсь создать контрольный пример автоматизации e2e, в котором создание данных является частью сценария тестирования. Создание тестовых данных, которые я написал в python, которые я хотел использовать с фреймворком cucumber.

Я использую Cucumber с машинописным шрифтом. Один из шагов заключается в создании тестовых данных, для которых он вызывает выше python скрипт с использованием spawn в одном из методов, который вызывается при определении шага.

Вариант использования: 1. Создайте 4 файла в папке. 2. Проверьте, что вышеуказанные файлы были удалены (В режиме реального времени файлы удаляются, так как инструмент, который читает эти файлы hl7, удаляет его после чтения.) 3. После удаления создайте другой файл в другом каталоге 4. Проверьте, что указанный выше файл удален , 5. Откройте пользовательский интерфейс. 6. Проверьте данные в пользовательском интерфейсе.

Поток внезапно завершается, показывая, что тест завершен с одним пройденным сценарием, но происходит только создание 4 файлов, а остальная часть лога c - нет. Работа. Когда я выполняю вышеуказанный сценарий python через python, он работает, как и ожидалось, но не с порождением.

Одно общее поведение, которое я видел, это когда я пытаюсь вызвать l oop в python от spawn он работает до значения 15K и после этого не работает

...