SlideShare a Scribd company logo
@Ben_Hall
Ben@BenHall.me.uk
 Blog.BenHall.me.uk
Me?
Aim to this talk
• Allow you to make an informed, educated
  decision for your project.
• Know how to quickly get started if you want to
• Know alternative approaches if you don’t
Agenda
•   UI Browser Automation
•   Databases and Data Creation
•   Below the UI Testing
•   Group therapy

• Pain points, problems, concerns
• Best approaches to deal with these
What do I mean by
ASP.NET automated
acceptance testing?
Google Search

DEMO OF AUTOMATED TESTING
var driver = new FirefoxDriver(new FirefoxProfile());
driver.Navigate().GoToUrl("http://www.google.co.uk");
IWebElement searchbox = driver.FindElement(By.Name("q"));

searchbox.SendKeys("ASP.net");
searchbox.SendKeys(Keys.Enter);

var results = driver.FindElement(By.LinkText("Get Started with
   ASP.NET & ASP.NET MVC : Official Microsoft Site"))
Assert.IsNotNull(results);
Testing pipeline
• Outside in, driven from requirements
• TDD to drive inside aspects once UI
  automated

• Idealistic.. Doesn’t work. Expensive! (Will
  define this later)
Real World...
     •   Bring flexible to change
     •   Regression testing
     •   Pushing forward, rapidly.
     •   Protecting your own arse




http://4.bp.blogspot.com/-v6mzllgkJlM/Tm-yiM4fPEI/AAAAAAAAE34/7-BEetlvyHo/s1600/matrix1.jpg
Testing ASP.NET - Progressive.NET
• Focus on solving a pain you have.
• Automated UI Testing is one way, which
  works, but it’s not the only way.
• Hire a manual tester? Short-term gain, long
  term pain.
Pain you may have in the future

   Depends on the system / scenario.
   UI Tests may not be the best way
Spike and Stabilise

Get something out, get feedback,
         make it right.
It’s not all about code quality!

   Should not be the driving force
• Driving quality of your code via UI tests will kill
  your motivation for the entire project.
• IT HURTS! Been there, done that!
• Focus on what will help you deliver value
• Automated tests are expensive.

• How do you define value?
• Justify cost by delivering faster? Less bugs?
  Company loses less money?
Are “bugs” really bugs if they don’t
cost the company money nor annoy
              users?
Developers love making things complex




http://xkcd.com/974/
WHAT SHOULD YOU TEST?
Scenarios
• UI test should focus on scenarios
  – Behaviour.
  – Not actions.
A single test can save your career
Example of a 7digital career saver test
• 1) Can registered users add to basket and
  checkout?
• 2) Can people register

• Everything else is null and void if those don’t
  work
80/20 Rule

80% of the value comes from
        20% of tests
Design UI for testability
• Good CSS
• Good UX
• A bad UX will be extremely difficult to test
  – Code/Test smell!
<div>
 <div>
  <p>Some random text</p>
  <div>
       <p>Error Message</p>
  </div>
 </div>
</div>
                                            Much easier to test!
<div>
 <div>
  <p>Some random text</p>
  <div>
       <p class=“error”>Error Message</p>
  </div>
 </div>
</div>
Safety net when refactoring
        legacy code
• TDD Rules do apply – naming
• TDD doesn’t – single assertion
Automated tests against production
• Everything before (TDD, Staging etc) is just a
  precaution
• If it goes live and it’s dead – it’s pointless.
• Focused smoke tests
CODE & TOOLS
Selenium WebDriver
WebDriver is AMAZING!!!

  Google, Mozilla, Community
Creating a browser instance
new FirefoxDriver(new FirefoxProfile());

new InternetExplorerDriver();

new ChromeDriver(@".")

                                chromedriver.exe
Element Locator Strategies
Basically jQuery

driver.FindElement(By.Name("q"));
driver.FindElement(By.ClassName(“error-msg"))
driver.FindElement(By.Id("album-list"))
Page Interactions
Basically jQuery

.Text
.Click()
.Submit()
.SendKeys()  Used for inputing text
Executing JS
public static T ExecuteJS<T>(IWebDriver driver, string js) {
  IJavaScriptExecutor jsExecute = driver as IJavaScriptExecutor;
  return (T)jsExecute.ExecuteScript(js);
}



$(“.NewHeader.header .earn .dropdown-menu”).show();
Patiently Waiting
var time = new TimeSpan(0, 0, 30);
var timeouts = driver.Manage().Timeouts();
timeouts.ImplicitlyWait(time);
Patiently Waiting Longer
Use JS code / test hooks in application

window.SWAPP.isReady === true
[TestFixtureSetUp]
 public void CreateDriver() {
 _driver = new FirefoxDriver(new FirefoxProfile());
  _driver.Manage().Timeouts().ImplicitlyWait(new TimeSpan(0, 0,
   30));
}

 [SetUp]
 public void NavigateToWebpage() {
   _driver.Navigate().GoToUrl(WebApp.URL);
}

[TestFixtureTearDown]
public void FixtureTearDown() {
  if (_driver != null)
     _driver.Close();
}
But I told everyone to use Ruby
When tests fail have good
  debugging output
public static string TakeScreenshot(IWebDriver driver)
{
  string file = Path.GetTempFileName() + ".png";
  var s = ((ITakesScreenshot)driver);

    s.GetScreenshot().SaveAsFile(file, ImageFormat.Png);

    return file;
}
FUNDAMENTAL PROBLEM

      Websites change.
   Or at least they should.
public class ItemListing
{
    IWebDriver _driver;
    public ItemListing(IWebDriver driver) {
       _driver = driver;
    }

    public void AddToCart()
    {
      _driver.FindElement(By.Id("addToCart")).Click();
    }
}
TEA PLEASE
• MVC Music Store
• http://www.github.com
• /BenHall/ProgNet2012

• HelloWorldExamples/
• Installers/
• MVCMusicStore/
1. Test that item appears on the homepage
2. Automate adding an item to the basket



• Pair – Great opportunity.
YOUR TURN
http://www.github.com
/BenHall/ProgNet2012
public int HeaderCount(string cartCount) {
   var regex = new Regex(@"^Cart ((d+))$");
   var match = regex.Match(cartCount);
   var i = match.Groups[1].Captures[0].Value;
   return Convert.ToInt32(i);
 }
Thanks
So what did I do?
Testing ASP.NET - Progressive.NET
SLOW!!




http://www.flickr.com/photos/57734740@N00/184375292/
Internet Explorer
SetUp : System.InvalidOperationException :
  Unexpected error launching Internet Explorer.
  Protected Mode must be set to the same
  value (enabled or disabled) for all zones.
  (NoSuchDriver)
Complex Xpath / CSS Selectors

table[@id='foo2']/tbody/tr/td/a[contains(text(),'whatever')]
Don’t care about the minor details
• CSS downloading correctly...
• Other ways to solve that problem without UI
  testing
Form validation
• Could it be a unit test?
• Do you need to run it every time if it hasn’t
  changed?
• It’s a risk – how calculated is it?
DATABASES
CACHING

http://www.flickr.com/photos/gagilas/2659695352/
LEGACY DATABASE SCHEMA

http://www.flickr.com/photos/gagilas/2659695352/
Highly Coupled workflow
• UI Tests become highly coupled to the UI and
  existing workflow

• UI changes – or at least should. Tests will
  break, need maintenance etc - BAD
Data Builders
• Be able to test website against a clean empty
  database
• Build only the data your tests need
• REALLY hard with a legacy system
  – Focus on long term and take small steps to get
    there
Example
var u =new UserCreator(“Name”, 13)
       .WithOptionalValue(“Of Something”)
       .WithCart(p1, p2, p3)
       .Build();



UserDeleter.Delete(u)
Simple.Data / Lightweight ORM
db.Users.Insert(Name: "steve", Age: 50)




https://github.com/markrendle/Simple.Data/wiki/Inserting-and-updating-
   data
Shared database
•   Be careful
•   Tests clash
•   Use random keys when inserting (not 1-10)
•   Delete only the data you insert
TEA PLEASE
WHY USE A BROWSER?
MVC Test Automation
       Framework
Hosts ASP.NET in it’s own AppDomain
        Didn’t work for me.
CassiniDev
CassiniDevServer server = new CassiniDevServer();
server.StartServer(Path.Combine(Environment.Curre
  ntDirectory,
  @"......CassiniDevHostingExample"));
string url = server.NormalizeUrl("/");
EasyHTTP and CSQuery
EasyHTTP – Get / Dynamic
var http = new HttpClient();
http.Request.Accept =
  HttpContentTypes.ApplicationJson;
var response = http.Get("url");
var customer = response.DynamicBody;
Console.WriteLine("Name {0}", customer.Name);
EasyHTTP - Post
var customer = new Customer();
customer.Name = "Joe";
customer.Email = "joe@smith.com";
var http = new HttpClient();
http.Post("url", customer,
  HttpContentTypes.ApplicationJson);
CSQuery
var sel = dom.Select("a");

var id = dom[0].id;
var href = dom[0]["href"];

dom.Each((i,e) => {
    if (e.id == "remove-this-id") {
         e.Parent().RemoveChild(e);
    }
});
var url = "http://www.amazon.co.uk/s/ref=nb_sb_noss_2?url=search-
   alias%3Daps&field-keywords=Testing+ASP.net&x=0&y=0"

var httpClient = new HttpClient();
var response = httpClient.Get(url);
var dom = CsQuery.CQ.Create(response.RawText);
StringAssert.Contains("Ben Hall", dom.Find(".ptBrand").Text());
var url = "
   http://search.twitter.com/search.json?q=prognet&&rpp=5&includ
   e_entities=true&result_type=mixed "

var httpClient = new HttpClient();
 var response = httpClient.Get(url);
 Assert.That(response.DynamicBody.results.Length > 0);
1. Host MVCMusicStore using CassiniDev
2. Test that item appears on the homepage

• Feel free to download completed solution
YOUR TURN
http://www.flickr.com/photos/buro9/298994863/




 VSTest & Record / Playback
    • Record / Playback
    • VSTest



    • Not every tool helps!
• Chrome Dev Tool + Console - AMAZING
http://www.flickr.com/photos/leon_homan/2856628778/
Before you write a test think

what would happen if this failed in production
      for 30 minutes? 4 hours? 3 days?
           Would anyone care?
      Would something else catch it?
Focus on true value
• Mix different approaches – Hezies 57




http://www.gourmetsteaks.com/wp-content/uploads/steak-sauce-heinz-57.jpg
Testing ASP.NET - Progressive.NET
“Running UI Tests”
http://www.flickr.com/photos/philliecasablanca/245684098
6/




                                                                    @Ben_Hall
                                                           Ben@BenHall.me.uk
                                                            Blog.BenHall.me.uk

More Related Content

What's hot (20)

PPT
Building Quality with Foundations of Mud
seleniumconf
 
PDF
KISS Automation.py
Iakiv Kramarenko
 
PDF
Page Objects Done Right - selenium conference 2014
Oren Rubin
 
PDF
Efficient Rails Test Driven Development (class 4) by Wolfram Arnold
Marakana Inc.
 
PPTX
Out of box page object design pattern, java
COMAQA.BY
 
PDF
Token Testing Slides
ericholscher
 
PDF
Django Testing
ericholscher
 
PPT
A journey beyond the page object pattern
RiverGlide
 
PDF
How to make Ajax work for you
Simon Willison
 
KEY
Javascript unit testing, yes we can e big
Andy Peterson
 
PDF
Unit Testing JavaScript Applications
Ynon Perek
 
PDF
Introduction to Protractor
Jie-Wei Wu
 
PDF
Intro To JavaScript Unit Testing - Ran Mizrahi
Ran Mizrahi
 
PDF
CBDW2014 - MockBox, get ready to mock your socks off!
Ortus Solutions, Corp
 
PDF
Selenide alternative in Python - Introducing Selene [SeleniumCamp 2016]
Iakiv Kramarenko
 
PDF
Building a JavaScript Library
jeresig
 
PDF
Developer Tests - Things to Know
Vaidas Pilkauskas
 
PDF
Top100summit 谷歌-scott-improve your automated web application testing
drewz lin
 
PPT
Internet Explorer 8 for Developers by Christian Thilmany
Christian Thilmany
 
PDF
Painless JavaScript Testing with Jest
Michał Pierzchała
 
Building Quality with Foundations of Mud
seleniumconf
 
KISS Automation.py
Iakiv Kramarenko
 
Page Objects Done Right - selenium conference 2014
Oren Rubin
 
Efficient Rails Test Driven Development (class 4) by Wolfram Arnold
Marakana Inc.
 
Out of box page object design pattern, java
COMAQA.BY
 
Token Testing Slides
ericholscher
 
Django Testing
ericholscher
 
A journey beyond the page object pattern
RiverGlide
 
How to make Ajax work for you
Simon Willison
 
Javascript unit testing, yes we can e big
Andy Peterson
 
Unit Testing JavaScript Applications
Ynon Perek
 
Introduction to Protractor
Jie-Wei Wu
 
Intro To JavaScript Unit Testing - Ran Mizrahi
Ran Mizrahi
 
CBDW2014 - MockBox, get ready to mock your socks off!
Ortus Solutions, Corp
 
Selenide alternative in Python - Introducing Selene [SeleniumCamp 2016]
Iakiv Kramarenko
 
Building a JavaScript Library
jeresig
 
Developer Tests - Things to Know
Vaidas Pilkauskas
 
Top100summit 谷歌-scott-improve your automated web application testing
drewz lin
 
Internet Explorer 8 for Developers by Christian Thilmany
Christian Thilmany
 
Painless JavaScript Testing with Jest
Michał Pierzchała
 

Viewers also liked (20)

PPTX
Node.js Anti Patterns
Ben Hall
 
PPTX
What Designs Need To Know About Visual Design
Ben Hall
 
PPTX
Taking advantage of the Amazon Web Services (AWS) Family
Ben Hall
 
PPTX
Lessons from running potentially malicious code inside Docker containers
Ben Hall
 
PPTX
Continuous deployment
Ben Hall
 
PPTX
The Art Of Building Prototypes and MVPs
Ben Hall
 
PPTX
Real World Lessons on the Pain Points of Node.js Applications
Ben Hall
 
PPTX
Running Docker in Development & Production (DevSum 2015)
Ben Hall
 
PDF
Kata - Devops CDSummit LA 2015
John Willis
 
PPTX
Learning Patterns for the Overworked Developer
Ben Hall
 
PDF
Alibaba Cloud Conference 2016 - Docker Open Source
John Willis
 
PPTX
Running Docker in Development & Production (#ndcoslo 2015)
Ben Hall
 
PPTX
Implementing Google's Material Design Guidelines
Ben Hall
 
PPTX
Architecting .NET Applications for Docker and Container Based Deployments
Ben Hall
 
PPTX
Deploying Windows Containers on Windows Server 2016
Ben Hall
 
PPTX
Lessons from running potentially malicious code inside containers
Ben Hall
 
PPTX
The How and Why of Windows containers
Ben Hall
 
PPTX
Real World Experience of Running Docker in Development and Production
Ben Hall
 
PPTX
How I learned to stop worrying and love the cloud
Shlomo Swidler
 
PPTX
Deploying applications to Windows Server 2016 and Windows Containers
Ben Hall
 
Node.js Anti Patterns
Ben Hall
 
What Designs Need To Know About Visual Design
Ben Hall
 
Taking advantage of the Amazon Web Services (AWS) Family
Ben Hall
 
Lessons from running potentially malicious code inside Docker containers
Ben Hall
 
Continuous deployment
Ben Hall
 
The Art Of Building Prototypes and MVPs
Ben Hall
 
Real World Lessons on the Pain Points of Node.js Applications
Ben Hall
 
Running Docker in Development & Production (DevSum 2015)
Ben Hall
 
Kata - Devops CDSummit LA 2015
John Willis
 
Learning Patterns for the Overworked Developer
Ben Hall
 
Alibaba Cloud Conference 2016 - Docker Open Source
John Willis
 
Running Docker in Development & Production (#ndcoslo 2015)
Ben Hall
 
Implementing Google's Material Design Guidelines
Ben Hall
 
Architecting .NET Applications for Docker and Container Based Deployments
Ben Hall
 
Deploying Windows Containers on Windows Server 2016
Ben Hall
 
Lessons from running potentially malicious code inside containers
Ben Hall
 
The How and Why of Windows containers
Ben Hall
 
Real World Experience of Running Docker in Development and Production
Ben Hall
 
How I learned to stop worrying and love the cloud
Shlomo Swidler
 
Deploying applications to Windows Server 2016 and Windows Containers
Ben Hall
 
Ad

Similar to Testing ASP.NET - Progressive.NET (20)

PPTX
Javascript first-class citizenery
toddbr
 
PPT
Pragmatic Parallels: Java and JavaScript
davejohnson
 
PDF
UI Testing Automation
AgileEngine
 
PPTX
Browser Automated Testing Frameworks - Nightwatch.js
Luís Bastião Silva
 
ZIP
Automated Frontend Testing
Neil Crosby
 
PPTX
3 Ways to test your ColdFusion API - 2017 Adobe CF Summit
Ortus Solutions, Corp
 
PDF
Testing for fun in production Into The Box 2018
Ortus Solutions, Corp
 
PPTX
JavaScript front end performance optimizations
Chris Love
 
PPTX
Improving Your Selenium WebDriver Tests - Belgium testing days_2016
Roy de Kleijn
 
PDF
6 Traits of a Successful Test Automation Architecture
Erdem YILDIRIM
 
PPTX
Building frameworks over Selenium
Cristian COȚOI
 
PPTX
Continuous Delivery - Automate & Build Better Software with Travis CI
wajrcs
 
PDF
Using Selenium to Improve a Teams Development Cycle
seleniumconf
 
PDF
Session on Selenium Powertools by Unmesh Gundecha
Agile Testing Alliance
 
PPT
Testing in AngularJS
Peter Drinnan
 
PPT
Selenium
husnara mohammad
 
PDF
jQuery in the [Aol.] Enterprise
Dave Artz
 
PDF
Automated acceptance test
Bryan Liu
 
PDF
Node.js Development Workflow Automation with Grunt.js
kiyanwang
 
PPTX
A Sampling of Tools
Dawn Code
 
Javascript first-class citizenery
toddbr
 
Pragmatic Parallels: Java and JavaScript
davejohnson
 
UI Testing Automation
AgileEngine
 
Browser Automated Testing Frameworks - Nightwatch.js
Luís Bastião Silva
 
Automated Frontend Testing
Neil Crosby
 
3 Ways to test your ColdFusion API - 2017 Adobe CF Summit
Ortus Solutions, Corp
 
Testing for fun in production Into The Box 2018
Ortus Solutions, Corp
 
JavaScript front end performance optimizations
Chris Love
 
Improving Your Selenium WebDriver Tests - Belgium testing days_2016
Roy de Kleijn
 
6 Traits of a Successful Test Automation Architecture
Erdem YILDIRIM
 
Building frameworks over Selenium
Cristian COȚOI
 
Continuous Delivery - Automate & Build Better Software with Travis CI
wajrcs
 
Using Selenium to Improve a Teams Development Cycle
seleniumconf
 
Session on Selenium Powertools by Unmesh Gundecha
Agile Testing Alliance
 
Testing in AngularJS
Peter Drinnan
 
jQuery in the [Aol.] Enterprise
Dave Artz
 
Automated acceptance test
Bryan Liu
 
Node.js Development Workflow Automation with Grunt.js
kiyanwang
 
A Sampling of Tools
Dawn Code
 
Ad

More from Ben Hall (15)

PPTX
The Art Of Documentation - NDC Porto 2022
Ben Hall
 
PPTX
The Art Of Documentation for Open Source Projects
Ben Hall
 
PPTX
Three Years of Lessons Running Potentially Malicious Code Inside Containers
Ben Hall
 
PPTX
Containers without docker
Ben Hall
 
PPTX
Deploying windows containers with kubernetes
Ben Hall
 
PPTX
The Art of Documentation and Readme.md for Open Source Projects
Ben Hall
 
PPTX
How Secure Are Docker Containers?
Ben Hall
 
PPTX
The Challenges of Becoming Cloud Native
Ben Hall
 
PPTX
Scaling Docker Containers using Kubernetes and Azure Container Service
Ben Hall
 
PPTX
The art of documentation and readme.md
Ben Hall
 
PPTX
Experimenting and Learning Kubernetes and Tensorflow
Ben Hall
 
PPTX
Running .NET on Docker
Ben Hall
 
PPTX
Real World Lessons on the Pain Points of Node.JS Application
Ben Hall
 
PPTX
Tips on solving E_TOO_MANY_THINGS_TO_LEARN with Kubernetes
Ben Hall
 
PPTX
Real World Lessons On The Anti-Patterns of Node.JS
Ben Hall
 
The Art Of Documentation - NDC Porto 2022
Ben Hall
 
The Art Of Documentation for Open Source Projects
Ben Hall
 
Three Years of Lessons Running Potentially Malicious Code Inside Containers
Ben Hall
 
Containers without docker
Ben Hall
 
Deploying windows containers with kubernetes
Ben Hall
 
The Art of Documentation and Readme.md for Open Source Projects
Ben Hall
 
How Secure Are Docker Containers?
Ben Hall
 
The Challenges of Becoming Cloud Native
Ben Hall
 
Scaling Docker Containers using Kubernetes and Azure Container Service
Ben Hall
 
The art of documentation and readme.md
Ben Hall
 
Experimenting and Learning Kubernetes and Tensorflow
Ben Hall
 
Running .NET on Docker
Ben Hall
 
Real World Lessons on the Pain Points of Node.JS Application
Ben Hall
 
Tips on solving E_TOO_MANY_THINGS_TO_LEARN with Kubernetes
Ben Hall
 
Real World Lessons On The Anti-Patterns of Node.JS
Ben Hall
 

Recently uploaded (20)

PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
PDF
Future-Proof or Fall Behind? 10 Tech Trends You Can’t Afford to Ignore in 2025
DIGITALCONFEX
 
PDF
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PDF
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
Automating Feature Enrichment and Station Creation in Natural Gas Utility Net...
Safe Software
 
PPTX
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
PPT
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
PPTX
Digital Circuits, important subject in CS
contactparinay1
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
PPTX
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
PDF
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
Future-Proof or Fall Behind? 10 Tech Trends You Can’t Afford to Ignore in 2025
DIGITALCONFEX
 
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
Automating Feature Enrichment and Station Creation in Natural Gas Utility Net...
Safe Software
 
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
Digital Circuits, important subject in CS
contactparinay1
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 

Testing ASP.NET - Progressive.NET

Editor's Notes

  • #6: Ability to have an automated way to ensure that your application works on an end-to-end basis and it’s safe to deploy. Potentially a massive pain Potentially a massive life saver It all depends on how you approach it, it’s about the decisions.
  • #11: - Know when to break the rules. He can, he has experience. - Personally, I prefer to focus on what works
  • #80: $(“.NewHeader.header .earn .dropdown-menu”).show();