This is what a good online course would do. I took most of my master's program online due to many of my classes being on two different cities, and my city's campus being illiterate enough to not have anyone enrolled in humanities for one or two semesters straight (Yup, in a 10,000 student campus, everyone's there for the majors that "make you rich, yo"). Most of my online classes were graded through the quality of your research and your writing, and the ones that did have online tests... holy fuck almighty, even having the huge literary theory books, you would be thoroughly fucked without a complete and deep understanding of the material. Now, a more processal discipline, like software engineering, would be even better allowing this sort of practical evaluation.