Если родительский элемент div
*ngIf
оценивается как ложный, дочерние элементы не будут отображаться, а их код (например, name.errors.required
) не будет выполняться.
Вы получаете ошибку, потому что в вашем коде name.errors.required
всегда выполняется, даже когда name.invalid == false
.
name.invalid
указывает, что присутствуют ошибки проверки, то есть name.errors != null
. Проверяя name.invalid == true
в родительском div
сначала и только затем визуализируя внутренние элементы, вы гарантируете, что name.errors != null
и, следовательно, name.errors.required
во внутреннем div
могут быть вызваны без ошибок.
Да можно сделать поблочное тестирование, я надеюсь, что семинар не стоил слишком много. OCUnit и OCMock работают над iPhone SDK?
Не верно. Прежде чем SDK 2.2 там не был санкционированной поддержкой поблочного тестирования официальной Apple, но они с тех пор добавили поддержку OCUnit, которая документируется на веб-сайте Apple. OCUnit и OCMock работают над iPhone SDK?
Google обеспечивает большой инструментарий (Панель инструментов Google для Mac) http://code.google.com/p/google-toolbox-for-mac/wiki/iPhoneUnitTesting
Я думаю, что Google - немного больше завершенное, потому что можно также сделать некоторые функциональные тесты пользовательского интерфейса.
Надежда, которая помогает.
Другие указали на доступные варианты, но я укажу, что, даже если не было никаких доступных платформ поблочного тестирования, нет ничего препятствующего тому, чтобы Вы прокрутили Ваше собственное. Платформы модульного теста не то, что сложный, таким образом, отсутствие каждый не оправдание.
Sen:te (создатель среды тестирования, включенной с XCode), объясняет, как использовать OCUnit с проектом iPhone: http://www.sente.ch/s/?p=535&lang=en.
Нет, это не верно. С iPhone SDK 2.2 хорошо работает OCUnit. Кроме того, существуют другие библиотеки модульного теста с открытым исходным кодом, которыми можно пользоваться с iPhone.
Gorilla Logic только что выложила в открытый доступ FoneMonkey, настоящий инструмент функционального тестирования записи/воспроизведения для iPhone, работающий с OCUnit.
Вы можете узнать больше на http://www.gorillalogic.com/fonemonkey.