Loading...
a.polyanska avatar a.polyanska 107 Точки

[Homework] КПК - Компонентно тестване

Здравейте,

Боря се със домашното за юнит тестовете. Като цяло уж ми е ясна материята и нещата са логични, но нещо още ми е мътно и  не се доразбирам с Visual Studio-то и ще съм благодарна на малко помощ от по-разбиращите. Ето тестовете на DynamicList-овете от условието: тук

 

Първото ми питане е: Как се тестват пропъртитата? Нещо не мога да включа в контекста на тестовете как да стане.

Второ: Уж всички тестове минават, а когато поискам code coverage ми дава 0%. Излиза ми това съобщение: "Empty results generated: No binaries were instrumented. Make sure the tests ran, required binaries were loaded, had matching symbol files, and were not excluded through custom settings." Кое пропускам?

И трето: В част от тестовете съм сложила messages, но по някаква причина те не излизат, когато задам грешен тест. Някой знае ли коя е тази някаква причина? :)

 

0
C# OOP Advanced 30/03/2015 12:07:26
a_rusenov avatar a_rusenov 1103 Точки

Това с 0% code coverage е наистина интересен проблем, от който се оплакаха няколко души след лекцията. Доколкото и аз се рових, открих, че трябва да изтриеш .suo файла, но изглежда не помага. Пробвай да създадеш друг solution + проект и виж дали и там дава 0%.

Относно тестването на пропъртита - тестваш ги дотам, доколкото е нужно (обикновено тестваш валидациите в сетърите с [ExpectedException]). Гетърите не се тестват дотолкова дали връщат правилни данни (особено ако е автоматичен гетър), а по-скоро да видиш дали някой друг метод работи правилно (както например тествахме Push() на стека, който е void и не връща резултат, като assert-вахме дали Count се увеличава). Сорс кодът от лекцията е качен в страницата на курса.

Лицензи за dotcover нямаме.

0
23/02/2015 20:33:43
a.polyanska avatar a.polyanska 107 Точки

Създадох си нов сълюшън и проект и копирах кода вътре (нали правилно съм разбрала инструкциите?) и резултатът е същият- 0% и туй то. Пак изтрих .suo файла и пак 0%.

Лекцията я изгледах внимателно, но, честно казано, и през ум не ми мина, че с различните тестове (Push()) тестваме и пропърти :) Благодаря за насоките и подробното обяснение.

0
a_rusenov avatar a_rusenov 1103 Точки

Добре, пробвай да изтеглиш решението от лекцията и виж дали и на чужд проект ще имаш 0%.

0
a.polyanska avatar a.polyanska 107 Точки

Пробвах, получава се същото. Ни дума, ни вопъл, ни процент над нула. Явно грешката е в моя телевизор. Да не трябва някакви допълнителни настройки да се правят?

0
a_rusenov avatar a_rusenov 1103 Точки

Не, нищо не трябва да се настройва. Може ли да качиш твоя код някъде?

0
a_rusenov avatar a_rusenov 1103 Точки

Изглежда ок. Може ли да качиш целия си проект в github, за да проверим дали проблемът е от него или от твоето VS?

0
a.polyanska avatar a.polyanska 107 Точки

След кратка борба мисля, че аз победих ГитХъба :) ето

0
a_rusenov avatar a_rusenov 1103 Точки

Ами, изтрих генерираните тестове + bin + obj папките и тръгна code coverage при мен. Ако и това не помогне, наистина нямам решение. На следващата лекция (утре в сряда) ще разгледаме по-подобно с колегите, които имат този проблем. Ще пишем в тази тема щом открием решение. :)

1
a.polyanska avatar a.polyanska 107 Точки

Извинявай, не разбрах- папката TestResults ли изтриваш? Това ли са генерираните тестове? Аз поне не виждам друго, което мога да оприлича на това, но когато изтрия тази папка и отворя проекта, казва, че няма налични тестове. А не виждам друго за триене. surprised

0
nedjo avatar nedjo 53 Точки

Не знам дали е от това, но и аз в първият момент на тестовете имах чувството, че code coverage не се покачва, но в следващият осъзнах, че тествам само селектираният тест. Убедена ли си, че тестваш с всички тестове. TEST -> Analyze code coverage -> All Tests?

0
a.polyanska avatar a.polyanska 107 Точки

@nedjo,

Да сигурна съм, проверих специално :)

0
a.polyanska avatar a.polyanska 107 Точки

Малко е отдавнашна дискусията, но сега, като седнах да се готвя за изпита, се сблъсквам със същия проблем с code coverage-a. Изпълних всички инструкции - да изтрия.suo, .bin, .obj + тестовете и пак съм на 0%. Дали изникнаха още идеи и предположения къде може да е проблемът?

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.