question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Consolidate smoke tests and best practices with DPG partner tools

See original GitHub issue

Summary

As part of the DPG effort, we are providing tools and guidance to our service team partners:

  • To enable them to create a new SDK in the repo for their service, that builds and passes CIs in 10 minutes
  • That has all the information they need to follow Azure SDK best practices to create tests, samples, and other customer-facing documents in a matter of days

In order for our partners to be successful, we need the following:

  • Client code our partners generate should be generated using the latest version of autorest in the repo, otherwise partners could ask to review a library that doesn’t follow the latest guidelines.
  • The new SDK projects our partners create with our tools should build and pass CI at all times, otherwise our partners will need additional support to use our tools, when the tools should be self-serve.
  • There should be one source of guidance for creating tests, samples and other docs exists in one place, since providing the same guidance in multiple places can cause the instructions to differ and this can create confusion for partners about which guidance they should follow.

Current problems

  • The template project is not being updated automatically when a new generator version is applied to the repo

    This is because only the files under /sdk are regenerated when the generator version is updated in the repo

  • The output of the generated project is not currently being smoke tested, so we don’t know whether it will build and pass CIs

    This is because smoke tests are running on an HLC client

  • Guidance for creating tests, samples, and other docs exists under both /eng/templates and /sdk/template

    For example:

Success Criteria

  • The client code generated by the quickstart tool is generated using the latest version of autorest in the repo
  • The project generated by the quickstart tool builds and produces a library that passes CI
  • The guidance for creating tests, samples and other docs exists in one place, and isn’t duplicated in multiple areas of the repo. This is related to https://github.com/azure/azure-sdk-for-net/issues/27770, in that all the guidance under /doc/Data Plane Code Generation should refer to whatever is being created and smoke tested.

Notes

  1. This issue was previously titled: Figure out the story around how sdk/template and eng/templates/Azure.ServiceTemplate.Template interact, with the description

We are adding template files as part of https://github.com/azure/azure-sdk-for-net/issues/24495, but having two templates is going to cause a lot of confusion about which is the source of truth, as well as maintenance issues, etc.

We need a story to merge these two things into one.

  1. This issue replaces:

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:7 (7 by maintainers)

github_iconTop GitHub Comments

2reactions
weshaggardcommented, Jan 20, 2022

I would like to combine these that is why @annelo-msft opened this issue but when we do combine, we should ensure we can continue to use it for testing out engsys stuff.

1reaction
weshaggardcommented, Feb 9, 2022

That seems like a good direction to me. As for whether or not it is possible I’m not sure about those particular details. I mostly would like for us to only have one template instead of multiple.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Smoke Testing Tools and its Best Practices | Quick Guide
Smoke Testing tools, benefits and Best Practices for adopting Software Testing in Web application to find bug and resolve it in early stage ......
Read more >
What is Smoke Testing? - A Detailed Guide
Some of the major tools that automate smoke testing are: 1. Testsigma: Testsigma is an ideal tool for automating your smoke tests because:...
Read more >
Functional Smoke Testing: Techniques and Tips
Functional smoke testing can be improved by following some best practices such as keeping the test cases simple, clear, and concise. It's important...
Read more >
What is Smoke Testing? An Essential Guide with Examples
This smoke testing tutorial covers what smoke testing is, its importance, benefits, and how to perform it with real-time examples.
Read more >
Smoke Tests | GitLab
In short, smoke tests run quick end-to-end functional tests from GitLab QA and are designed to run against the specified environment to ensure...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found