{"id":164969,"date":"2019-09-18T18:00:00","date_gmt":"2019-09-18T10:00:00","guid":{"rendered":"http:\/\/itteacheritfreelance.hk\/test\/wordpress\/?guid=0583b1159647d5591ebb176b9b8f5d15"},"modified":"2019-09-18T18:00:00","modified_gmt":"2019-09-18T10:00:00","slug":"4-python-test-frameworks-to-crush-your-bugs-2","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/2019\/09\/18\/4-python-test-frameworks-to-crush-your-bugs-2\/","title":{"rendered":"4 Python test frameworks to crush your bugs"},"content":{"rendered":"<p>Enterprise software needs tests the way buildings need fire and safety inspections. If you know certain electrical conditions or structural issues could lead to catastrophe, you look for them not just once but again and again. Likewise, if you want to guard against certain problems or conditions in your software application, writing tests for them ensures that they won\u2019t ever escape into production.<\/p>\n<p>Tests are doubly important with dynamic languages like Python. With dynamic languages, whole <a href=\"http:\/\/itteacheritfreelance.hk\/index.php\" title=\"\u672c\u7db1\u9801\u63d0\u4f9b\u4e00\u500b\u65b9\u4fbf\u7684\u5e73\u53f0, \u70ba\u5927\u5bb6\u914d\u5c0d\u96fb\u8166\u88dc\u7fd2,IT freelance, \u79c1\u4eba\u8001\u5e2b , PHP\u88dc\u7fd2, HTML\u88dc\u7fd2, CSS\u88dc\u7fd2, JavaScript\u88dc\u7fd2, XML, Java\u88dc\u7fd2,Server\u88dc\u7fd2, MySQL\u88dc\u7fd2, \u4e2d\u5b78\u96fb\u8166\u79d1\u79c1\u4eba\u88dc\u7fd2, \u5728\u8077\u4eba\u58eb\u96fb\u8166\u63d0\u5347\u88dc\u7fd2,\u5c08\u696d\u8003\u8a66\u96fb\u8166 \u88dc\u7fd2,\u96fb\u8166\u5716\u50cf\u8a2d\u8a08\u96fb\u8166\u88dc\u7fd2, gra\">class<\/a>es of errors surface only at runtime. Robust test suites can help smoke out those problems, and provide a way for whomever inherits the codebase to do the same.<\/p>\n<aside class=\"fakesidebar\"><strong>[ Find the best of Python on InfoWorld: <a href=\"https:\/\/www.infoworld.com\/article\/3400640\/the-best-new-features-in-python-38.html\">The best new features in Python 3.8<\/a>. \u2022 <a href=\"https:\/\/www.infoworld.com\/article\/3008915\/24-python-libraries-for-every-python-developer.html\">24 Python libraries for every Python developer<\/a>. \u2022 <a href=\"https:\/\/www.infoworld.com\/article\/3105502\/review-13-python-web-frameworks-compared.html\">13 Python web frameworks compared<\/a>. \u2022 <a href=\"https:\/\/www.infoworld.com\/article\/3233250\/5-essential-python-tools-for-data-sciencenow-improved.html\">5 essential Python tools for data science<\/a>. | Keep up with hot topics in programming with InfoWorld\u2019s <a href=\"https:\/\/www.infoworld.com\/newsletters\/signup.html\">App Dev Report newsletter<\/a>. ]<\/strong><\/aside>\n<aside class=\"fakesidebar\"\/>\n<p>By default, Python comes with its own unit-testing framework, and it is both useful and widely used. But many other options exist, each with its own philosophy about how to build and maintain unit tests. Following is a rundown of the default, <code>unittest<\/code>, along with the three most significant alternatives.<\/p>\n<p class=\"jumpTag\"><a href=\"https:\/\/www.javaworld.com\/article\/3439825\/4-python-test-frameworks-to-crush-your-bugs.html#jump\">To read this article in full, please click here<\/a><\/p>\n<\/section>\n<\/article>\n<p>(Insider Story)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Enterprise software needs tests the way buildings need fire and safety inspections. If you know certain electrical conditions or structural issues could lead to catastrophe, you look for them not just once but again and again. Likewise, if you want to guard against certain problems or conditions in your software application, writing tests for them ensures that they won&rsquo;t ever escape into production.<\/p>\n<p>Tests are doubly important with dynamic languages like Python. With dynamic languages, whole classes of errors surface only at runtime. Robust test suites can help smoke out those problems, and provide a way for whomever inherits the codebase to do the same.<\/p>\n<aside><strong>[ Find the best of Python on InfoWorld: <a href=\"https:\/\/www.infoworld.com\/article\/3400640\/the-best-new-features-in-python-38.html\">The best new features in Python 3.8<\/a>. &bull; <a href=\"https:\/\/www.infoworld.com\/article\/3008915\/24-python-libraries-for-every-python-developer.html\">24 Python libraries for every Python developer<\/a>. &bull; <a href=\"https:\/\/www.infoworld.com\/article\/3105502\/review-13-python-web-frameworks-compared.html\">13 Python web frameworks compared<\/a>. &bull; <a href=\"https:\/\/www.infoworld.com\/article\/3233250\/5-essential-python-tools-for-data-sciencenow-improved.html\">5 essential Python tools for data science<\/a>. | Keep up with hot topics in programming with InfoWorld&rsquo;s <a href=\"https:\/\/www.infoworld.com\/newsletters\/signup.html\">App Dev Report newsletter<\/a>. ]<\/strong><\/aside>\n<aside><\/aside>\n<p>By default, Python comes with its own unit-testing framework, and it is both useful and widely used. But many other options exist, each with its own philosophy about how to build and maintain unit tests. Following is a rundown of the default, <code>unittest<\/code>, along with the three most significant alternatives.<\/p>\n<p><a href=\"https:\/\/www.javaworld.com\/article\/3439825\/4-python-test-frameworks-to-crush-your-bugs.html#jump\">To read this article in full, please click here<\/a><\/p>\n<p>(Insider Story) <a href=\"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/2019\/09\/18\/4-python-test-frameworks-to-crush-your-bugs-2\/\">\u95b1\u8b80\u5168\u6587 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":168,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"slim_seo":[],"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[451,2,7],"tags":[398,402,397,414,413,410,409,407,408,406,399,400,394,318,558,560,555,561,566,553,554,586,585,563,562,183,567,524,10,401,396,403,412,411,395,405,404,457,454,319,316],"jetpack_publicize_connections":[],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p7prtj-GUN","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/posts\/164969"}],"collection":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/users\/168"}],"replies":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/comments?post=164969"}],"version-history":[{"count":0,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/posts\/164969\/revisions"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/media?parent=164969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/categories?post=164969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/tags?post=164969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}