Loading...
emilia98 avatar emilia98 92 Точки

Unit Testing - Exam Problems

Здравейте,

Решавам задачи от Unit Testing от минали изпити на JavaScript Advanced и явно някъде много бъркам, защото нищо не се получава. От няколко дена насам не успявам да ги докарам, затова имам нужда от няколко насоки (не от решения).

Link to Add/Swap/Shift Left/Shift Right

(JS Advanced 13 Nov 2016)

Link to Add/Delete In List

(JS Advanced 6 Nov 2016)

Това са двете решения, които се опитвам да нагодя, така че Judge-ът да ги хареса. Ще се радвам да чуя всякакви идеи (най-вече умни и приложими, разбира се).

Тагове:
0
Module: JS Advanced
Jeliozver avatar Jeliozver 356 Точки

За първото сложи декларирането на променливата result в describе функцията преди beforeEach-a иначе judge няма как да знае за нея. Внимавай и да го пуснеш с правилната стратегия от падащото меню (в случая най-долната). С тези промени дава 64 точки. Вече трябва да помислиш кои тестове си изпуснала.

За втората имам някакъв спомен, че ако се ползва beforeeach гърмеше в judge.

2
13/04/2018 20:34:04
emilia98 avatar emilia98 92 Точки

Благодаря, колега!

Най-накрая открих проблема на втората задача - когато тествам локално, list-ът не се изпразва след всеки тест, а ако го пусна в Judge, всеки тест започва с празен масив. Ако в подаденото решение не е IIFE, а си е съвсем обикновена анонимна функция, няма да има подобен проблем и ще си тръгваме при всеки тест с празен масив.

0
IvayloIvanovV avatar IvayloIvanovV 83 Точки

Трябва да внимаваш за граничните случай, няма нужна да правиш 100 теста за едно и също нещо.


Трябва да предвидиш какво е изпуснал автора на дадения тест, например :
Имаш в условито index < 0, но в даден тест са написали index <= 0, твойте тестове трябва да са с index = -1 и index = 0, и съответно да връщат коректния резултат.


Една от уловките е и да проверяваш дали всичи неща са включени в даден тест. Съответно ако имаш в условието .add(), .remove(), .getElement() и други функции, трябва да провериш дали ги има в теста на автора. Това най-често става с .hasOwnProperty() или type of.

Дано да съм ти помогнал и успех! smiley

2
14/04/2018 00:33:35
emilia98 avatar emilia98 92 Точки

Благодаря, колега, определено ми помогна!

Наистина, тотално изключих за проверките дали даден метод съществува. 100-те теста ги направих, защото не знаех къде гърми, но вече разбрах защо се получават така нещата.

 

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