SkillFit: Establish Integration Testing Pattern

SkillFit: Establish Integration Testing Pattern

 

Created Date

Feb 2, 2023

Target PI

PI 2

Target Release

Apr 14, 2023

Jira Epic

https://economicmodeling.atlassian.net/browse/CSP-1698

Document Status

Committed

Epic Owner

@Taylor Rogers

Stakeholder

@Matt Horning (Deactivated) @Tori Przybyl

Engineering Team(s) Involved

SKILLFIT

PART 1

Customer/User Job-to-be-Done or Problem

The Scope of the user problem should be narrowed to the scope you are planning to solve in this phase of work. There may be other aspects you are aware of and plan to solve in the future. For now, put those in the Out of Scope section.

When developing the SkillFit App, I want to be able to push code without worrying about breaking existing features, so I can ship new features more quickly.

 

Value to Customers & Users

In the JTBD framework, these are the “pains” and “gains” your solution will address. Other ways to think about it: What’s the rationale for doing this work? Why is it a high priority problem for your customers and how will our solution add value?

We currently have somewhere around a 10% failure rate on various skillfit pages (profile, jobs, sign-up, job posting). We also need to be able to push new features without making these pages any worse/more fragile.

Value to Lightcast

Sometimes we do things for our own benefit. List those reasons here. 

  • Faster feature development in the future.

  • More robust app in the future

  • More knowledge about when things break and why

Target User Role/Client/Client Category

Who are we building this for?

  • Jobseekers

  • Developers

Delivery Mechanism

How will users receive the value?

  • They should see fewer errors and more new features more quickly

Success Criteria & Metrics

How will you know you’ve completed the epic? How will you know if you’ve successfully addressed this problem? What usage goals do you have for these new features? How will you measure them?

  • A new pattern (using React-testing-library and MSW) is established

    • The POC mocks requests to test different states of a page/component

  • We should be able to copy the pattern easily to reduce testing friction

  • We should be alerted if we push code that breaks important features

Aspects that are out of scope (of this phase)

What is explicitly not a part of this epic? List things that have been discussed but will not be included. Things you imagine in a phase 2, etc.

 

PART 2

Solution Description

Early UX (wireframes or mockups)

<FigmaLink>

 

Non-Functional Attributes & Usage Projections

Consider performance characteristics, privacy/security implications, localization requirements, mobile requirements, accessibility requirements

 

Dependencies

Is there any work that must precede this? Feature work? Ops work? 

 

Legal and Ethical Considerations

Just answer yes or no.

Have you thought through these considerations (e.g. data privacy) and raised any potential concerns with the Legal team?

High-Level Rollout Strategies

  • Initial rollout to [internal employees|sales demos|1-2 specific beta customers|all customers]

    • If specific beta customers, will it be for a specific survey launch date or report availability date 

  • How will this guide the rollout of individual stories in the epic?

  • The rollout strategy should be discussed with CS, Marketing, and Sales.

  • How long we would tolerate having a “partial rollout” -- rolled out to some customers but not all

 

Risks

Focus on risks unique to this feature, not overall delivery/execution risks. 

 

Open Questions

What are you still looking to resolve?

 


Complete with Engineering Teams

 

Effort Size Estimate

Estimated Costs

Direct Financial Costs

Are there direct costs that this feature entails? Dataset acquisition, server purchasing, software licenses, etc.?

 

Team Effort

Each team involved should give a general t-shirt size estimate of their work involved. As the epic proceeds, they can add a link to the Jira epic/issue associated with their portion of this work.

Team

Effort Estimate (T-shirt sizes)

Jira Link

Team

Effort Estimate (T-shirt sizes)

Jira Link