Presentation is loading. Please wait.

Presentation is loading. Please wait.

Testing for the web and some other stuff. A BIT ABOUT ME Jonathan Director at Ocellics Software Solutions Studied at UCT and have a Honours in Information.

Similar presentations


Presentation on theme: "Testing for the web and some other stuff. A BIT ABOUT ME Jonathan Director at Ocellics Software Solutions Studied at UCT and have a Honours in Information."— Presentation transcript:

1 Testing for the web and some other stuff

2 A BIT ABOUT ME Jonathan Director at Ocellics Software Solutions Studied at UCT and have a Honours in Information Systems Been working as a software dev for 8 years now with the last year as a director at Ocellics Software fanatic: Love solving business problems with elegant software solutions Constantly pushing myself to stay at the latest and greatest when it comes to software techniques and technology

3 TODAY’S TOPIC Talk about my experience over last 8 years in becoming a professional developer Testing for the web Resource recommendations that greatly helped my career

4 WHERE I’VE WORKED Start-up company called PushPlay RisCura financial risk consultants Based in Claremont, office in JHB, Namibia and London Ocellics Software Solutions Based in Claremont, clients all over the country

5 WHAT I DO AND DON’T KNOW DO Enterprise level architecture Windows applications Windows services APIs Web Applications …all talking to each other across network and external servers over the net Robust and scalable software Don’t How to make PowerPoint do what I want I did not do ComSci

6 MY BIBLE AND HYMNAL

7 MY 3 KEY CODING RULES TDD Polymorphism Dependency injection

8 TESTING TDD BDD Acceptance testing Automated UI testing Load testing Web penetration testing

9 TDD Bread and butter stuff It’s more than just testing that your code works Better architecture Makes changes easier as it removes uncertainty and fear Speeds up development dramatically Faking allows for isolation of code (SOLID principles) We use Moq framework for Faking (Mocking) The difference between a software professional and a person that writes code

10 TDD cont. Write your test first Run the test and see it fail Write just enough production code to pass that test Rinse and repeat At RisCura we had over 2500 unit tests Ocellics EDM has over 600 and it’s only a year old

11 TDD ON THE WEB: CLIENT SIDE The rules are the same Tools for testing Javascript that we use: Mocha - framework Sinon – fakes, or rather spies as they are called in JS Others: Jasmine And Jasmine Spies QUnit

12 BDD The concept is that of an automated test that solves a Use Case Gherkin and SpecFlow:

13 ACCEPTANCE TESTING Testlodge:

14 AUTOMATED TESTING Tools Selenium CodedUI WatiN …and many more Works well for bigger teams with mature software applications where the UI does not change regularly We focus on TDD and keeping the UI layer as thin as possible

15 LOAD AND PENETRATION TESTING Visual Studio has built in tools for load testing Other tools on the market if you do some googling… Some top web security risks Injection Broken Authentication and Session Management Cross-Site Scripting (XSS) …full course on the rest listed in resources slide Incredibly critical within the finance industry Some of our clients request 3 rd party penetration testing

16 WHAT DOES OCELLICS DO? We use the latest tech on the Microsoft stack All the groovy stuff like Entity Framework code first, Web API, MVC, Jquery, Angular etc… Unit tests

17 WHAT DOES OCELLICS DO? Cont. We are focused in the financial industry We build tactical solutions for clients that help with decision making. We spin off products when the opportunity arises. Data storage solutions with data provision Data focused, algorithms, reporting and charting

18 ADVICE FOR GRADUATES Focus on learning Find a company that has a culture that cultivates learning and knowledge share I have interviewed many people with great salaries but lack real programming experience Be careful of big companies – don’t get stuck doing the same thing for 10 years Golden hand-cuffs Use your free time wisely Work on pet projects Use resources like Pluralsight Know your worth in the market Prove yourself first, it makes negotiation much easier Make yourself indispensable through great, clean and robust code Don’t blackmail a company with poor, buggy and unstable code

19 RECOMMENDED RESOURCES Clean Code and Clean Coder Pluralsight http://www.pluralsight.com/courses/web-security-owasp-top10-big- picturehttp://www.pluralsight.com/courses/web-security-owasp-top10-big- picture http://www.pluralsight.com/courses/codedui-testing-web-applications http://www.pluralsight.com/courses/test-first-development-1 http://www.pluralsight.com/courses/automated-acceptance-testing- specflow-gherkinhttp://www.pluralsight.com/courses/automated-acceptance-testing- specflow-gherkin …and plenty, plenty more…

20 GET IN TOUCH jmckie@ocellics.com We’re always looking for more nerds Drop us an email with a motivational letter and your CV admin@ocellics.com


Download ppt "Testing for the web and some other stuff. A BIT ABOUT ME Jonathan Director at Ocellics Software Solutions Studied at UCT and have a Honours in Information."

Similar presentations


Ads by Google