Inside the Asterisk

Keyword: testing

pjproject-2.9 Qualified For Use With Asterisk

We’re pleased to say that we’ve qualified pjproject 2.9 with Asterisk and that the recent 13.28 and 16.5 Asterisk releases have the bundled pjproject updated to the new version.  All of the patches against pjproject 2.8 we’ve previously submitted upstream to Teluu (the maintainers of pjproject) were accepted but since the release of 2.9, we’ve

Read More

Continuous Integration Update

Back in December in my The Continuing Saga of Continuous Integration blog post I wrote about how we reduced the Testsuite’s “27” layers of file system access down to 3 by moving the Docker container’s /tmp filesystem to be memory backed.  That reduced the number of individual test failures by quite a bit but still

Read More

R.I.P. Media Index Cache!

If you’ve been concerned about slow Asterisk startup times or excessive memory utilization, we’ve got some good news for you.  We’ve eliminated the media index cache that gets built when Asterisk starts. Currently, when Asterisk starts, one of the tasks is to do a scan of /var/lib/asterisk/sounds and build an index of every sound file,

Read More

The Continuing Saga of Continuous Integration

or… “Watch This Space” If you’re an Asterisk contributor you’ve probably noticed that we’d been having issues with large numbers of Jenkins test failures during the “gate” phase of the Gerrit review process.  Some tests were failing consistently and others seemed random.  After a lot of head scratching we finally figured out the major contributor

Read More

Performance Improvements: Inbound Registration

Measuring performance in Asterisk, like most software systems for that matter, can be a complicated task. When testing performance it is important to define goals, and limit the context for that which is being tested. It’s been previously shown that res_pjsip might have an efficiency problem when it comes to inbound registration. Our main goal for this

Read More

Asterisk Test Suite: Building Better Tests

Let’s talk some more about testing, understanding the test framework for Asterisk, and building better tests. An exciting topic I know! In a previous post, we discussed how unit testing Asterisk worked. Here, though we’ll be talking a bit about the Asterisk Test Suite. The Asterisk Test Suite is a way to write automated, functional, “black-box”

Read More

Continuous Integration with Asterisk and Docker

How much testing do we really do? A lot, and let’s face it,  Asterisk isn’t the easiest of software packages to test.  Our continuous integration environment could run over 1000 tests on a single change before it’s merged into the codebase.   Unfortunately, without a significant amount of work, mostly around directory and port coordination,

Read More

Continuous Integration: Helping to find problems.

Continuous integration isn’t something that many people in the Asterisk project think about but it is a critical part of the development of Asterisk. It provides assurances on changes that go in and allows us to find problems faster, usually before a release occurs. The first introduction someone may have to our continuous integration is

Read More

Asterisk 14: Coming with improved PJSIP DNS Support!

The PJSIP library now used by Asterisk to provide SIP support has included basic SIP DNS support for quite some time. However through using it ourselves and from feedback from the community we determined that it was not as feature rich as we would like and as part of Asterisk 14 we set about improving

Read More

How To: Unit Testing Asterisk

So you’ve written some code for Asterisk and now you need to test it. The Asterisk project has support for both integration and unit testing. In this post we’ll talk about the latter, how to write a unit test. Luckily, for someone already modifying, or adding to, the Asterisk source writing a unit test has

Read More
Scroll to Top