International Journal of Advanced Research in Computer Science and Software Engineering (IJARCSSE)
Software system should be reliable and available failing which huge losses may incur. To achieve these objectives a thorough testing is required. In recent years, there has been a dramatic rise in the number of languages used in mainstream projects. In particular, languages which run on the JVM or Common Language Runtime (CLR) have become quite popular in creating a global development framework. Naturally, such languages prefer to inter-operate with other languages built on these core platforms, particularly Java and C#. The problem is that such efforts are crippled by one fundamental limitation: circular dependencies-a relation between two or more modules which either directly or indirectly depend on each other to function properly.