Model-based testing (MBT) is a promising approach for generating test cases from system models, providing high levels of automation and effectiveness. The potential for automation in MBT is possible if the model is formal and machine-readable. A commonly employed formal modeling technique is the representation of a system as an extended finite state machine (EFSM). However, in practice, formal models are not common in the industry. Activity diagrams, on the other hand, are well-suited for generating test cases, but their lack of formal semantics can lead to ambiguous interpretations and make them unsuitable for automation. In this paper, we propose an efficient approach that maps UML Activity Diagrams into EFSMs, providing a formal modeling of the system under test (SUT) and utilizes JUnit and ModelJUnit Java libraries to automatically generate test cases, using coverage measures to evaluate them. Our approach aims to overcome the limitations of automation in MBT, while achieving efficient coverage and execution time metrics.