Search code examples
androidfitnesseacceptance-testingclean-architecture

In clean architecture, How to do acceptance testing?


In Android, I'm using clean architecture and putting my code packaged by layer. So I've 4 layers (modules) :

  • app
  • data
  • device
  • domain

I know, correct me if I'm wrong, that acceptance testing (Using FitNesse) should replace UI in better words, it should mimic UI and test core functions of the system from customer's point of view.

My Question is :

Should I create another module for FitNesse fixtures and stuff, with dependencies on each module in the system?


Solution

  • This is what I usually see done, yes. The builder system (maven, gradle, etc.) is tweaked so that it does not include the module containing the fixtures in the production artifact. The module containing the fitnesse fixtures is aware of / has dependencies to all of the modules it directly tests, which tends to be the domain layer.