@DevOpsSummit Authors: Pat Romanski, Elizabeth White, Yeshim Deniz, Liz McMillan, Zakia Bouachraoui

Related Topics: PowerBuilder, Agile Computing

PowerBuilder: Blog Post

What Are Assertions?

PowerBuilder Journal - The crux of "Test Driven Development" and refactoring is writing assertions to test your code

PBDJ Blog on Ulitzer

PowerBuilder Developer's Journal - The crux of Test Driven Development and refactoring is writing assertions to test your code.   So what's an assertion?  The dictionary says that an assertion is "a positive statement or declaration."  According to the computing dictionary (this is definition you're looking for) it's "An expression which, if false, indicates an error."  In unit testing you are formulating assertions to catch not supposed to happen coding errors.  So you write the assertion first in a test - then you write simple code in the method under test to make the test pass.  Then you write more complex code and test again and around you go etc. etc. until your logic is complete and the test still passes.  Now you have confidence that your method really works!

OK.  Now the catch <g>- What about when you want to write a test that is expecting an exception - Usually when an exception is thrown in code - that's a bad thing and you want to know about it.  Well following the definition for assertion you set up for an exceptional condition and then write an assertion that will make the exception occur.  So the error is when the assertion does not occur - So you leave the catch block empty - and in the TRY block, on the line after the real assert you add another assertion that this line will never occur - cause if it does then that's a bug cause the exception was never thrown!

Insight: I'd assert that 'Unit Testing and TDD is a hot topic in the industry.' Evidence - publishers are releasing new books on the topic.  They only publish if they can make $$ - so developers must be buying!

Observation:  TDD gives you more freedom to experiment.  Sometimes you identify little changes that might just improve the code - but you've used never the technique or written anything like it before.   Ordinarily because of the overhead of testing via debugging you would be inclined not to bother since the deadline is looming and time is tight and debugging can be a long drawn out affair - BUT - when you have a test in place and know you code is working - you can make that little experimental change and run the test in a few microseconds.  Wow

Funny:  Writing courseware is allot like TDD - You write Objectives (High Level Design) -  Then you write Quiz Questions  (Assertions!!!!).  Then you write the detail (Implement the method). Someone can test their understanding through doing the questions!  (iterate as necessary) Amazing!!

Qutable quote:"Yesterday's pie in the sky becomes today's desert".  I arrived at this one while thinking about how the object purist ideas of the late 90's early 2000's Test Driven Design and Refactoring have become the powerful necessary development methodologies in today's application world.

Off the wall observation: Did you ever notice that weird is a weird word - remember - I before E except after C - so it should be spelled wierd but it's not!

More Stories By Yakov Werde

Yakov Werde, a 25 year IT industry veteran, is a member of TeamSybase and the newly formed Sybase Customer Evangelist Team. Yakov is a recognized author, speaker and trainer who has been designing and delivering PowerBuilder, .NET, EaServer, Web App Development, and Java training for over 14 years to corporate, military and government developers. Prior to discovering his aptitude as an educator, Yakov worked as an architect, project manager and application coder in the trenches of application software development. Yakov holds a Masters in Education with a specialty in instructional design for online learning from Capella University and a BS in math and computer science from Florida International University. Yakov, managing partner of eLearnIT LLC (www.elearnitonline.com), authors and delivers workshops and web based eLearning tutorials to guide professional developers toward PowerBuilder Classic and .NET mastery. Follow Yakov on Twitter as @eLearnPB

@DevOpsSummit Stories
In his session at 20th Cloud Expo, Mike Johnston, an infrastructure engineer at Supergiant.io, discussed how to use Kubernetes to set up a SaaS infrastructure for your business. Mike Johnston is an infrastructure engineer at Supergiant.io with over 12 years of experience designing, deploying, and maintaining server and workstation infrastructure at all scales. He has experience with brick and mortar data centers as well as cloud providers like Digital Ocean, Amazon Web Services, and Rackspace. His expertise is in automating deployment, management, and problem resolution in these environments, allowing his teams to run large transactional applications with high availability and the speed the consumer demands.
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
Most DevOps journeys involve several phases of maturity. Research shows that the inflection point where organizations begin to see maximum value is when they implement tight integration deploying their code to their infrastructure. Success at this level is the last barrier to at-will deployment. Storage, for instance, is more capable than where we read and write data. In his session at @DevOpsSummit at 20th Cloud Expo, Josh Atwell, a Developer Advocate for NetApp, will discuss the role and value extensible storage infrastructure has in accelerating software development activities, improve code quality, reveal multiple deployment options through automated testing, and support continuous integration efforts. All this will be described using tools common in DevOps organizations.
Andi Mann, Chief Technology Advocate at Splunk, is an accomplished digital business executive with extensive global expertise as a strategist, technologist, innovator, marketer, and communicator. For over 30 years across five continents, he has built success with Fortune 500 corporations, vendors, governments, and as a leading research analyst and consultant.
A valuable conference experience generates new contacts, sales leads, potential strategic partners and potential investors; helps gather competitive intelligence and even provides inspiration for new products and services. Conference Guru works with conference organizers to pass great deals to great conferences, helping you discover new conferences and increase your return on investment.