yaml.scanner.ScannerError: значения сопоставления в этом контексте недопустимы (справка по тестированию Python Black Box) - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь запустить использовать PBBT для вызова ввода файла .yaml, который затем запустит файл .py. Но я продолжаю получать следующую ошибку "yaml.constructor.ConstructorError: ожидаемая последовательность тестовых записей в" input12sys.yaml ", строка 3, столбец 3" (правка). Я приложу фактический бит python для входного файла и .yaml. Так что все могут видеть, что я могу делать / делаю неправильно.

Любая помощь в правильной работе будет принята с благодарностью, так как я новичок в этом деле. Вот файл .py, который мы хотим запустить с .yaml для pbbt (Daniel_Rogers_HW2.py - имя файла)

import sys
# create a list
list2 = [4, 5, 1, 3, 7, 2, 5]
SumList = sum(list2)
print ("Dear Daniel")
print (*list2 , sep = " + ", end ='')
print (" =" , SumList)

Вот файл .yaml (отредактированный)

output: output12sys.yaml
tests:
   py: Daniel_Rogers_HW2.py
   except: ValueError

А вот ошибка, которую я получаю при запуске pbbt input12sys.yaml -T enter image description here

1 Ответ

0 голосов
/ 30 сентября 2019

Ваш YAML-файл начинается с:

import yaml

output:

И у вас не может быть многострочного скаляра без кавычек (import yaml\n\noutput) в качестве ключа для сопоставления. Вы, вероятно, просто хотите удалить строку import yaml, а если нет, вам нужно применить кавычки:

"import yaml

output": output12sys.yaml

Если предположить, что import yaml ошибочен, вы, вероятно, захотите просмотреть документацию pbbt, так какзначение для tests должно быть списком, исходя из https://bitbucket.org/prometheus/pbbt/src/default/. Т.е. похоже на

output: output12sys.yaml
tests:
-  py: Daniel_Rogers_HW2.py    # note the list item indicator at the start of the line
   except: ValueError
...