官术网_书友最值得收藏!

The Testability Framework

With Dynamics NAV 2009 Service Pack 1, Microsoft introduced the testability framework in the platform. This enabled developers to build test scripts in C/AL to run so-called headless tests; that is, tests that do not use the user interface (UI) to execute business logic. It was a follow-up on an internal tool called the NAV Test Framework (NTF) and had been used and worked on for a couple of years already. It allowed tests to be programmed in C# and ran against the Dynamics NAV UI. It was a neat system, with a neat technical concept behind it. However, this running test against the UI was one of the major reasons for leaving NTF behind. I seem to recall that it was the major reason because accessing business logic through the UI is slow – too slow. Too slow to allow the Microsoft Dynamics NAV development team to run all their tests against the various versions in a reasonable time. Nowadays, Microsoft is supporting five major versions (NAV 2015, NAV 2016, NAV 2017, NAV 2018, and Business Central) for 20 countries, and each of these country versions is being built and tested at least once a day. Any delay in the tests has a huge impact on the build of these 100 versions.

In this chapter, we will have a look at what I call the five pillars of the testability framework. The five technical features that make up this framework are as follows:

  • Test codeunits and test functions
  • asserterror
  • Handler functions
  • Test runner and test isolation
  • Test pages
主站蜘蛛池模板: 大厂| 商城县| 吴忠市| 灵台县| 沈阳市| 万山特区| 绥棱县| 盐亭县| 土默特左旗| 阳高县| 永安市| 香格里拉县| 德兴市| 巴青县| 元朗区| 肥乡县| 牙克石市| 咸宁市| 孝感市| 馆陶县| 榆树市| 景宁| 文化| 图木舒克市| 方山县| 商都县| 平顺县| 定日县| 南漳县| 襄汾县| 岚皋县| 尼木县| 新乡县| 石楼县| 扬中市| 基隆市| 凭祥市| 兰西县| 丹凤县| 黄石市| 四子王旗|