2016-09-08 2 views
0

Я пишу случаи UITest в свое приложение, используя XCTest. Некоторые тестовые примеры требуют некоторого ввода.XCTest UITesting - Импорт тестовых примеров и результатов экспортных тестов

Учтите, что я пишу тестовую версию моей страницы входа. Требуется страница регистрации Имя пользователя & Пароль. Я должен проверить недопустимое имя пользователя, неверный пароль, пустые поля, действительное имя пользователя и пароль для всех этих сценариев. Эти входы (Имя пользователя & Пароль с различной комбинацией) был установлен в тестовых классах.

Я хочу отделить эти входы от классов испытаний. Я должен давать результаты извне. Поэтому я создал файл plist, который включает в себя имя пользователя & комбинацию паролей. Я импортировал plist данные файла и передал его в тестовые примеры.

Вопрос: Этот подход подходит? Или я должен сделать любой другой способ передать ввод в мои тестовые примеры?

При выходе на выходную часть, после того, как тестовые примеры были завершены, результаты испытаний можно увидеть на панели «Навигатор тестирования». (Прошедшие результаты показаны с зеленой меткой, где красный показывает неудачный тестовый пример).

Я хочу, чтобы экспортировать эти результаты от Xcode, так что я могу представить результаты на веб-странице, или я могу хотеть, чтобы напечатать результаты в текстовом файле и т.д.

Вопрос: Возможно ли это ? Если да, может кто-нибудь объяснить на это?

Просто смущенный !!

ответ

2

Вы можете использовать либо plist, либо Json-файл для параметризации тестов. Чтобы проанализировать вывод, вы можете использовать xcpretty, который широко используется для форматирования для xcodebuild, он также генерирует выходные данные как XML-формат Unit-Style или html. Вы можете запускать тесты из командной строки с помощью xcodebuild test и передать выходные в xcpretty

0

После некоторых исследований, я написал класс Util, который может принимать PLIST, объект JSON, текстовый файл в качестве входных данных. Он преобразует их в NSDictionary, тогда он будет использовать необходимые данные в качестве входных данных.

Для выходной части, я использую OSX Server. Встроенные выходы более элегантны, чем мои ожидания. Благодаря Apple!