У чым розніца паміж выпрабавальным джгутом і выпрабавальным бегунам?


адказ 1:

Test Runner - Выкананне тэстаў альбо індывідуальна, у пакетах, альбо ў пэўным парадку

Test Wires Harness - Стварае сераду, у якой тэст можна запускаць. Тэставы кабель імітуе ўсе ўваходы і выхады межаў праграмнага забеспячэння, якое трэба выпрабаваць. Дапусцім, вы пішаце праграмнае забеспячэнне, якое працуе ў робата. Электраправодка імітуе электрамеханічныя інтэрфейсы, з якімі праграмнае забеспячэнне ўзаемадзейнічае. Тэставы кабель таксама можа імітаваць API, які немэтазгодна працаваць з тэставым бягуном.


адказ 2:

Выпрабавальны джгут з'яўляецца часткай асновы, якая збірае вынікі тэстаў, і тэставы бягун робіць некаторыя тэсты.

Чакаецца, што тэставы кабель зразумее семантыку вынікаў выпрабаванняў. Іншымі словамі, большасць джгутоў разумее, што "ўсе тэсты прайшлі" або "32 тэсты былі прапушчаныя", у той час як тэставы бягун зрабіў для мяне такія рэчы, як "выканаць усе тэсты, адзначаныя рэгрэсіяй" або "усё з аб'ектам" Злучная " запусціць адпаведныя тэсты ""

Калі я працаваў над сваёй праграмай Perl для папярэдняга працадаўцы, я стварыў тэставы запуск, які адбіраў тэсты, а потым перадаваў іх тэставым стравам для выканання, якія семантычна распавядалі, ці быў я чырвоным ці зялёным для маіх чырвона-зялёных тэстаў. Гэта было ў Perl і Test :: Правод - асноўны аб'ект, які я выкарыстоўваў у якасці джгута. Цяпер гэты модуль заменены TAP :: збруя, але не ў версіі, якую я выкарыстоўваю. Стандартны тэст-бегун Perl гэта даказвае, але я напісаў сваё, таму што яму трэба было зразумець нешта асаблівае ў маіх рамках. У прыватнасці, файлы мяняюць месцазнаходжанне з версіяй фреймворка, так што ўсе файлы ў той жа версіі захоўваюцца і звязаны паміж сабой. Аднак некалькі версій фрэймворка павінны былі быць падтрыманы, але яны не маглі адлюстроўвацца ў адным сцэнары.