by Daniele Di Lucido
May 26, 2020
Blog

How to use Cypress with encrypted streaming?

You are building a TV streaming service on multiple devices like mobiles or Smart TV, and you want to run a Cypress test that requires a player and DRM content? Welcome, you have come to the right place! 💪

I won’t waste your time by explaining why Cypress is an amazing framework, and why you should have automated E2E tests. If you are here, it is because you already know all of this.

The issue

We decided to adopt Cypress to build an automated test suite to avoid regressions, increase the developer’s confidence, and maintain a stable codebase. After a few tests, we hit a stumbling block.

We weren’t able to test our players and our content because our clients use DRM content (CypressGitHub issue).

Browsers use External Components like “Widevine Content Decryption Module” to resolve DRM content. In Cypress, however, all the browser external components are disabled.

This will cause an exception in the Players while it’s resolving the content.

As you can imagine, for a streaming app it is crucial to be able to test the players and their logic, and this put us in front of a tough decision, give up on Cypress and automated tests, or find a solution!

How do we handle that?

After hours of crazy research and days of frustration, we came up with a simple question:

Do we really need it?

In our tests, we usually stream video content in order to check some business logic or to assert that the player is acting as intended. (We are not testing the actual encoding of the content or similar).

Then we faced the ugly/beautiful truth. No, you don’t need a DRM content to test that!

When we came to this mind blowing conclusion, we decided to mock the service that returns all the streaming information.

We created a JSON file to mock the streaming information that will use a clear content “Big Buck Bunny: the Dark Truths”

cypress/mock/streamingInfo.json

And stub the service that returns the streaming information in our tests:

And voilà, you are ready to stream 🍿

Note: Our projects are using Cypress v3.2.2, at the time of writing.

P.S. Need some help testing your TV Apps? We offer OTT testing as a service, including basic and premium OTT features, pre-defined and bespoke test cases, as well as device manufacturer certification checklists and app validation. Find out more and reach out here.
There´s code behind every click: Engineering of UI/UX

There´s code behind every click: Engineering of UI/UX

Digital Accessibility is one of the strongest focuses in the current decade. As TV Streaming becomes a commonplace, technology and apps need to become less challenging for one of the most common media consumption… This article illustrates some examples of what needs to be considered to make TV Streaming services more accessible.

A Guide To Making TV Streaming Services More Accessible

A Guide To Making TV Streaming Services More Accessible

Digital Accessibility is one of the strongest focuses in the current decade. As TV Streaming becomes a commonplace, technology and apps need to become less challenging for one of the most common media consumption… This article illustrates some examples of what needs to be considered to make TV Streaming services more accessible.

Norigin Media Launches CTV White-label FAST Apps

Norigin Media Launches CTV White-label FAST Apps

The brandable Connected TV Apps product will help launch D2C Linear or FAST TV channels on multiple App stores. The white-label apps can be used across Samsung Tizen, LG webOS and other Android TV OS based Smart TVs.

IABM appoints Norigin Media to EMEA Member Council

IABM appoints Norigin Media to EMEA Member Council

Ajey Anand, CEO of Norigin Media, has been selected as a member of the regional EMEA council. ,This helps to build communications within the industry between members and customers, creating collaborations and driving innovation across Europe.

Northern Waves TV Conference 2023

Northern Waves TV Conference 2023

The OTT TV conference for the latest updates in TV technology, products and business model trends is confirmed to be in person on the 19th of October 2023 in Oslo, Norway. Northern Waves TV organisers have announced speakers representing leading broadcasters and operators from across the Nordics and Europe.

Discover more from Norigin Media

Subscribe now to keep reading and get access to the full archive.

Continue reading