Kas teeadekvaatsus garanteerib programmi korrektsuse? Anda hinnang programmi keerukusele. Kuidas toimub tsüklite testimine? Testimine programmi teksti põhjal- võetakse ette programm ja luuakse teste selle teksti põhjal. Lauseadekvaatsus- testimise tulemusena peab programmis iga lause olema vähemalt üks kord töötanud. Haruadekvaatsus- läbib kõik harud, ka tühjad. Seega on täielikum kui lauseadekvaatsus. Elementaartingimuste adekvaatsus- kui If-lause tingimus on loogiline avaldis, siis tekivad selle avaldise läbimisel sisuliselt programmi harud, mis peavad olema testide käigus läbitud. Teeadekvaatsus- Kõik programmi teed peavad olema läbitud. Kas teeadekvaatsus garanteerib programmi korrektsuse- peaks garanteerima. Programmi keerukus- McCabe’i programmi keerukuse mõõt V(G) põhineb programmi hargnemistel. V(G) annab haruadekvaatsete testide arvu.
mõõt peaks olema 10 Kui If-lause tingimus on loogiline avaldis, siis tekivad selle avaldise läbimisel sisuliselt programmi harud, kuigi näiliselt selliseid harusid ei ole. Näiteks võidakse disjunktsiooni puhul hinnata tingimus tõeseks juba esimese komponendi tõesuse korral; järgmisi komponente siis enam ei hinnata ega testita. Neid harusid saab programmi graafis kujutada. Järgmine haruadekvaatsusest tugevam nõue ongi elementaartingimuste adekvaatsus - ka loogilise avaldise harud peavad olema testide käigus läbitud. Ka see on üsna mõistlik kriteerium ja praktikas kasutusel. Viimase kriteeriumina sellest klassist vaatame nõuet, et programmi testimisel peavad kõikvõimalikud teed programmi graafis olema läbitud. Idee on selge ja kena, kuid tsükleid sisaldavate reaalsete programmide puhul on vajalike testide maht enamasti väga suur ja see ei luba teeadekvaatsuse kriteeriumit selliste programmide testimisel kasutada