what is a guerrilla testing? when to use this and what is the benefit of doing this testing?

I understand it is a non-structured or unplanned test, but how it is different from usability testing?

I know the difference between A/B Testing and Usability testing, but why the name Guerrilla? How does the name 'Guerrilla' justify the outcome of the testing result?